我有一個這樣的數據框:df:col1 col2 A blue berry B nice water bottle我想從 col2 值中刪除第一個單詞,最終的數據框將如下所示:df1:col1 col2 A berry B water bottle如何使用熊貓以最有效的方式做到這一點
3 回答

收到一只叮咚
TA貢獻1821條經驗 獲得超5個贊
使用split首先用空格n=1,然后通過索引選擇第二列表:
df['col2'] = df['col2'].str.split(n=1).str[1]
print (df)
col1 col2
0 A berry
1 B water bottle
詳情:
print (df['col2'].str.split(n=1))
0 [blue, berry]
1 [nice, water bottle]
Name: col2, dtype: object
如果性能很重要并且沒有缺失值,則將解決方案轉換為列表理解:
df['col2'] = [x.split(maxsplit=1)[1] for x in df['col2']]

qq_遁去的一_1
TA貢獻1725條經驗 獲得超8個贊
d['col2'] = d['col2'].apply(lambda x: ' '.join(x.split(' ')[1:]))
輸出
col1 col2
0 A berry
1 B water bottle

叮當貓咪
TA貢獻1776條經驗 獲得超12個贊
在你的情況下
df1.col2 = df1.col2.str.split(" ",1).str[1]
可能會起作用。這.str
為您提供了列上的矢量化字符串功能,并且 split 需要一個額外的參數,說明它最大程度地拆分的頻率。
添加回答
舉報
0/150
提交
取消