簡體   English   中英

pandas-從另一個df元素的split元素更新數據框中的值

[英]pandas - update value in dataframe from split element of another df element

Python newb正在學習Pandas,因此這可能不是解決此問題的正確方法。

在數據幀df ,具有列testIDproj

testID是一個int (例如'23'),而proj是一個由3個部分組成的underscore_separated_name(例如bob_xp_sam )。 我希望將所有testID值修改為例如xp-23 (通過從proj捕獲"xp"並將其隱化為每個現有的testID值)。

這是我所在的位置,但不會飛:

df['testID'] = df['proj'].str.split('_')[1] +'-'+ df['testID']

我嘗試了多種形式,例如:

df['proj'].split('_')[1]
 > AttributeError: 'Series' object has no attribute 'split'

df['proj'].str.split('_')[1]
> TypeError: can only concatenate list (not "str") to list

可以肯定的是我的方法是錯誤的-會有所幫助的。

[1]之前,您需要另一個str訪問器來訪問列表類型列中的單個元素(由split返回):

df['proj'].str.split('_').str[1]
#                         ^^^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM