楼主: jzplarry
1601 3

[问答] 请问各位大侠,pandas 如何根据 dataframe中的其他列还确定本列的操作? [推广有奖]

  • 0关注
  • 2粉丝

已卖:66份资源

学科带头人

16%

还不是VIP/贵宾

-

威望
0
论坛币
1933 个
通用积分
34.3911
学术水平
1 点
热心指数
2 点
信用等级
1 点
经验
27210 点
帖子
2401
精华
0
在线时间
1176 小时
注册时间
2006-8-2
最后登录
2024-10-6

楼主
jzplarry 发表于 2017-3-12 22:11:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大侠!dataframe中可有什么办法,根据其他列情况(如大于10还是小于10),来确定本列是否添加一个字符串后缀?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Dataframe 请问各位大侠 pandas panda Frame

沙发
67890 发表于 2017-3-13 00:55:02
something like:
s['name'].str += 'abc' if s['number'] >= 10
?

藤椅
longgb246 学生认证  发表于 2017-3-15 00:15:10
s['b'] = map(lambda x: 'aa_'+ str(x[1]) if x[0] > 10 else str(x[1]), s.loc[:,['a','b']].values)。
上面代码意思为:如果s的a列>10,则b列加上前缀'aa_'。只用替换s、a、b就可以直接完成功能。lambda函数你改改成你想用的就行。

板凳
longgb246 学生认证  发表于 2017-3-15 01:10:40
a['b'] = map(lambda x: 'aa'+ str(x[1]) if x[0] > 10 else str(x[1]), a.loc[:,['a','b']].values)
代码的意思是:对于dataframe:a,当'a'列大于10的时候,'b'列增加前缀'aa'。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-5 14:15