【发布时间】:2021-05-16 17:35:15
【问题描述】:
我有一个带有一列的 pandas DataFrame,比如:
df = pd.DataFrame({"combined_list": [["Netherlands|NL", "Germany|DE", "United_States|US", "Poland|PL"], ["Netherlands|NL", "Austria|AU", "Belgium|BE"], ["United_States|US", "Germany|DE"]]})
我想从combined_list 列创建两列:
- 一个包含所有正常的国家名称(所以在最后一次出现
|之前的所有内容) - 一列包含所有 2 个字母的缩写(这些缩写的长度始终为 2),所以基本上在最后一次出现
|之后的所有剩余文本
生成的 Dataframe 应如下所示:
countries abbreviations
[Netherlands, Germany, United_States, Poland] [NL, DE, US, PL]
[Netherlands, Austria, Belgium] [NL, AU, BE]
[United_States, Germany] [US, DE]
如何做到这一点?
我知道如果 Dataframe 的列只是一个字符串,我可以使用各种字符串拆分函数来实现它,但找不到列表列的任何内容
【问题讨论】: