为了账号安全,请及时绑定邮箱和手机立即绑定

如何在熊猫数据框的顶部添加一行?

如何在熊猫数据框的顶部添加一行?

梵蒂冈之花 2021-12-09 14:37:07
我通过这个读取我的数据:dataset = pd.read_csv(r' ...\x.csv')然后像这样指定选择其中的一些:dataset = dataset.loc[len(dataset)-data_length:  , :]做移位:dataset_shifted = dataset.shift(1) dataset_shifted = dataset_shifted.dropna()并且喜欢在 my 的顶部添加一个等于 1 的新行dataset。但是使用以下命令不起作用,因为我的数据索引从 3714 到 3722,它在数据帧的末尾而不是在它的顶部添加了一个索引 0!dataset_shifted = dataset_shifted .loc[0 , :] = 1
查看完整描述

1 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

如果没有缺失值,DataFrame您可以通过删除dropna和使用来简化您的解决方案DataFrame.fillna:


dataset = pd.DataFrame({

         'B':[4,5,4],

         'C':[7,8,9],

         'D':[1,3,5],


}, index=[3714, 3715, 3716])


print (dataset)

      B  C  D

3714  4  7  1

3715  5  8  3

3716  4  9  5


dataset_shifted = dataset.shift(1).fillna(1)

print (dataset_shifted)

        B    C    D

3714  1.0  1.0  1.0

3715  4.0  7.0  1.0

3716  5.0  8.0  3.0

如果可能,缺失值仅按位置设置第一行DataFrame.iloc:


dataset_shifted = dataset.shift(1)

dataset_shifted.iloc[0 , :] = 1

您的解决方案应该改变:


dataset_shifted = dataset.shift(1)

dataset_shifted = dataset_shifted.dropna()

dataset_shifted.loc[0 , :] = 1

dataset_shifted = dataset_shifted.sort_index()


print (dataset_shifted)

        B    C    D

0     1.0  1.0  1.0

3715  4.0  7.0  1.0

3716  5.0  8.0  3.0


查看完整回答
反对 回复 2021-12-09
  • 1 回答
  • 0 关注
  • 156 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信