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

如何为熊猫的特定行和列添加值?

如何为熊猫的特定行和列添加值?

慕的地6264312 2022-11-01 14:48:05
所以这是交易,我有这个数据框,让我们将其命名为 lovely_df:   foo? fah? boo? Nice Numbers0  foo  fah  boo  101  meh  fah  boo  202  meh  fah  boo  303  foo  fah  boo  404  meh  fah  boo  50试图这样做:lovely_df.loc[lovely_df['foo?'] == 'meh',:]['Nice Numbers'].add(1)它返回给我:   Nice Numbers1  212  314  51如果将其保存到 lovely_df 中就可以了,但它没有,所以我尝试了:lovely_df.loc[lovely_df['foo?'] == 'meh',:]['Nice Numbers'] = lovely_df.loc[lovely_df['foo?'] == 'meh',:]['Nice Numbers'].add(1)它确实有效,但它给了我:<input>:1: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.Try using .loc[row_indexer,col_indexer] = value instead所以就是这样,我只是想在几行的单列中添加一个特定的数字,而不会让 Python 对我哭泣。多谢你们!
查看完整描述

1 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

您可以numpy.where根据自己的情况使用


lovely_df['new_col'] = np.where(lovely_df['foo?'] == 'meh',

                                lovely_df['Nice Numbers'].add(1),

                                lovely_df['Nice Numbers'])

print(lovely_df)


  foo? fah? boo?  Nice Numbers  new_col

0  foo  fah  boo            10       10

1  meh  fah  boo            20       21

2  meh  fah  boo            30       31

3  foo  fah  boo            40       40

4  meh  fah  boo            50       51


查看完整回答
反对 回复 2022-11-01
  • 1 回答
  • 0 关注
  • 103 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号