创建数组中两个相邻数字之间的 col 差异数组 python/pyspark
Create array of differences in col between two adjacent numbers in an array python/pyspark
我有一列由数字组成的数组,即 [0,80,160,220]
,我想创建一列包含相邻项之间差异的数组,即 [80,80,60]
有人知道如何在 Python 或 PySpark 中解决这个问题吗?我正在考虑一些迭代的东西(第一个学期减去第 i-1 个学期,从第二个学期开始),但我真的不知道如何编码。谢谢!
编辑:
d=[0,80,160,220]
df=pd.DataFrame(d,columns= ['col_list'])
df['col_new']=df['col_list'].diff()
print(df)
#output
col_list col_new
0 0 NaN
1 80 80.0
2 160 80.0
3 220 60.0
另外,如果你想删除带有NaN
的行,你可以这样做:
df.dropna(subset = ['col_new'])
#output
col_list col_new
1 80 80.0
2 160 80.0
3 220 60.0
我有一列由数字组成的数组,即 [0,80,160,220]
,我想创建一列包含相邻项之间差异的数组,即 [80,80,60]
有人知道如何在 Python 或 PySpark 中解决这个问题吗?我正在考虑一些迭代的东西(第一个学期减去第 i-1 个学期,从第二个学期开始),但我真的不知道如何编码。谢谢!
编辑:
d=[0,80,160,220]
df=pd.DataFrame(d,columns= ['col_list'])
df['col_new']=df['col_list'].diff()
print(df)
#output
col_list col_new
0 0 NaN
1 80 80.0
2 160 80.0
3 220 60.0
另外,如果你想删除带有NaN
的行,你可以这样做:
df.dropna(subset = ['col_new'])
#output
col_list col_new
1 80 80.0
2 160 80.0
3 220 60.0