Python 如何更新pandas中的多个行和列?
我想使用pandas更新CSV文件中的多个行和列 我尝试过使用iterrows方法,但它只在单个列上有效 以下是我要应用于多行和多列的逻辑: ifvalue<平均值: 值+=标准偏差 其他: 值-=标准偏差Python 如何更新pandas中的多个行和列?,python,pandas,csv,dataframe,data-manipulation,Python,Pandas,Csv,Dataframe,Data Manipulation,我想使用pandas更新CSV文件中的多个行和列 我尝试过使用iterrows方法,但它只在单个列上有效 以下是我要应用于多行和多列的逻辑: ifvalue
这是另一种方法 考虑到您的数据如下:
price strings value
0 1 A a
1 2 B b
2 3 C c
3 4 D d
4 5 E f
现在让我们将字符串列作为索引:
df.set_index('strings', inplace='True')
#Result
price value
strings
A 1 a
B 2 b
C 3 c
D 4 d
E 5 f
现在将行C、D、E的值设置为0
或者你可以做得更精确一些
df.loc[df.strings.isin(["C", "D", "E"]), df.columns.difference(["strings"])] = 0
df
Out[82]:
price strings value
0 1 A a
1 2 B b
2 0 C 0
3 0 D 0
4 0 E 0
欢迎来到StackOverflow。请花点时间阅读这篇文章,以及如何提供答案并根据答案修改您的问题检查应用-您应该添加一个小示例数据集。
df.loc[df.strings.isin(["C", "D", "E"]), df.columns.difference(["strings"])] = 0
df
Out[82]:
price strings value
0 1 A a
1 2 B b
2 0 C 0
3 0 D 0
4 0 E 0