我試圖從存儲在數據框列中的凌亂文本字符串中提取年份和降雨量值,并將它們保存到新列中。在使用不同的切片方法進行測試失敗后,我通過列表推導完成了它。列表理解是提取字符串子集進行廣播的最佳方法嗎?非常感謝大家!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
添加回答
舉報
0/150
提交
取消