我需要对数据框进行一些操作
我的数据框是
df = pd.DataFrame(data={'col1':[1,2],'col2':[3,4]})
col1 col2
0 1 3
1 2 4
我的操作素取决于列
例如,我需要将(+
).max()
列添加到此列中的每个值
所以df.col1.max()
是2
,而df.col2.max()
是4
所以我的输出应该是:
col1 col2
0 3 7
1 4 8
我一直尝试这样:
for i in df.columns:
df.i += df.i.max()
但是
AttributeError: 'DataFrame' object has no attribute 'i'
答案 0 :(得分:3)
您可以链接df.add
和df.max
并指定避免出现任何循环的轴。
df1 = df.add(df.max(axis=0))
print(df1)
col1 col2
0 3 7
1 4 8
答案 1 :(得分:1)
要遍历各列并添加每列的最大值,您可以执行以下操作:
for col in df:
df[col] += df[col].max()
这给出
col1 col2
0 3 7
1 4 8