Python изучает новичков в Pandas, так что, вероятно, это неправильный подход к этому.
В фрейме данных df
, есть столбцы testID
и proj
.
testID
- это int
(например, '23'), а proj
- это имя с разделением подчеркивания, состоящее из 3 частей (например, bob_xp_sam
).Я хочу изменить все значения testID
, чтобы они стали, например, xp-23
(путем захвата "xp"
из proj
и конкатенации его к каждому существующему значению 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
Почти уверен, что мой подход неправильный - небольшое направление будетоценили.