首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在pandas数据帧中添加行移位

在pandas数据帧中添加行移位
EN

Stack Overflow用户
提问于 2020-04-16 15:31:13
回答 1查看 843关注 0票数 1

我有一个pandas df,它是我使用shift()函数迭代原始df创建的

代码语言:javascript
复制
for i in range(2, 4):
    df["lag_{}".format(i)] = df.x.shift(i)

因此,将会有实际的x列和具有移位的x值的lag2-lag10列。我已经为回归模型训练了这个数据集,以进行一步预测。我想在数据帧的末尾添加新的行,其中x的NaN值和从最后一个位置移位的值,以便能够使用这些新的滞后来拟合模型,以预测这个新的NaN值。如何在熊猫身上做到这一点?谢谢!

Upd:有df的图片,未加粗- df,加粗-要获取的所需行:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-16 15:45:42

结合使用带有关键字x的字典和DataFrame.append

代码语言:javascript
复制
df = pd.DataFrame({'x':range(10)})

df1 = df.append({'x':np.nan}, ignore_index=True)
#alternative
#df1 = df.append(pd.Series([np.nan], index=['x']), ignore_index=True)

for i in range(2, 10):
    df1["lag_{}".format(i)] = df1.x.shift(i)
print (df1)
      x  lag_2  lag_3  lag_4  lag_5  lag_6  lag_7  lag_8  lag_9
0   0.0    NaN    NaN    NaN    NaN    NaN    NaN    NaN    NaN
1   1.0    NaN    NaN    NaN    NaN    NaN    NaN    NaN    NaN
2   2.0    0.0    NaN    NaN    NaN    NaN    NaN    NaN    NaN
3   3.0    1.0    0.0    NaN    NaN    NaN    NaN    NaN    NaN
4   4.0    2.0    1.0    0.0    NaN    NaN    NaN    NaN    NaN
5   5.0    3.0    2.0    1.0    0.0    NaN    NaN    NaN    NaN
6   6.0    4.0    3.0    2.0    1.0    0.0    NaN    NaN    NaN
7   7.0    5.0    4.0    3.0    2.0    1.0    0.0    NaN    NaN
8   8.0    6.0    5.0    4.0    3.0    2.0    1.0    0.0    NaN
9   9.0    7.0    6.0    5.0    4.0    3.0    2.0    1.0    0.0
10  NaN    8.0    7.0    6.0    5.0    4.0    3.0    2.0    1.0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61244876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档