Python .iloc和for循环以添加新列
有一个数据帧,如:Python .iloc和for循环以添加新列,python,pandas,dataframe,loops,for-loop,Python,Pandas,Dataframe,Loops,For Loop,有一个数据帧,如: 将熊猫作为pd导入 df=pd.DataFrame([[11,21],[24,15],[17,48],[28,31],[22,14],[A',[B']列) 所以我想在名称“C”中添加新列。但我要“C”计算 基于“A”作为“C”[i]=“A”[i]-“A”[i-1]公式 我写了两种方法,但都不起作用 第一种方法): (0,5)中i的 df['c'].iloc[i]=df['A'].iloc[i]-df['A'].iloc[i-1] 打印(df) 第二项): (0,5)中i
将熊猫作为pd导入
df=pd.DataFrame([[11,21],[24,15],[17,48],[28,31],[22,14],[A',[B']列)
所以我想在名称“C”中添加新列。但我要“C”计算
基于“A”作为“C”[i]=“A”[i]-“A”[i-1]公式
我写了两种方法,但都不起作用
第一种方法):
(0,5)中i的
df['c'].iloc[i]=df['A'].iloc[i]-df['A'].iloc[i-1]
打印(df)
第二项):
(0,5)中i的
df.iloc['c',i]=df.iloc['A',i]-df.iloc['A',i-1]
打印(df)
有人可以指导吗?您可以使用.shift()
:
印刷品:
A B C
0 11 21 NaN
1 24 15 13.0
2 17 48 -7.0
3 28 31 11.0
4 22 14 -6.0
A B C
0 11 21 NaN
1 24 15 13.0
2 17 48 -7.0
3 28 31 11.0
4 22 14 -6.0