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

如何从 Pandas 数据框列广播文本字符串的子集

如何从 Pandas 数据框列广播文本字符串的子集

慕森王 2021-09-25 10:15:43
我试图从存储在数据框列中的凌乱文本字符串中提取年份和降雨量值,并将它们保存到新列中。在使用不同的切片方法进行测试失败后,我通过列表推导完成了它。列表理解是提取字符串子集进行广播的最佳方法吗?非常感谢大家!df = pd.DataFrame(['   1883   1    6.3     1.7       6   122.1     ---',               '   1883   2    8.0     2.8       2    69.8     ---',               '   1883   3    4.8    -1.6      23    29.6     ---',])df['split'] = df[0].str.split()df['year'] = [df['split'][i][0] for i in df.index]df['rainfall'] = [float(df['split'][i][5]) for i in df.index]
查看完整描述

1 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

df['split'] = df[0].str.split()

df['year']=df['split'].map(lambda x:x[0])

df['rainfall']=df['split'].map(lambda x:x[5])

df=df[['year','rainfall']]

df

       year rainfall

    0  1883    122.1

    1  1883     69.8

    2  1883     29.6


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

添加回答

举报

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