难以同时设置一组索引和条件的数据。什么是正确的方式来做到以下几点?熊猫设置索引和条件集的数据
此外,对于此示例,df.index
不起任何作用。请假设它代表另一个熊猫DataFrame/Series。
import pandas
df = pandas.DataFrame([{'val1': 30, 'val2': 40}, {'val1': 40, 'val2': 20}, {'val1': 50, 'val2': 10}])
# I can do this
df['val1'][df['val2'] == 40] = 1
print df
val1 val2
0 1 40
1 40 20
2 50 10
# I can even do this
# Sets everything since full index is passed in (same as df['val1'] = 1)
df['val1'].loc[df.index] = 1
print df
val1 val2
0 1 40
1 1 20
2 1 10
# But I cannot do this?
df['val1'].loc[df.index][df['val2'] == 20] = 1
print df
val1 val2
0 30 40
1 40 20
2 50 10
这是利用熊猫0.19.2
'.loc [df.index]'应该做什么? –