我有一个名为ebola
的Pandas DataFrame,如下所示。 variable
列有两个信息status
,分别是 Cases 或 Deaths ,以及country
,其中包含国家/地区名称。我尝试使用status
函数从该country
列中创建两个新列variable
和.apply()
。但是,由于我要提取两个值,所以它不起作用。
# let's create a splitter function
def splitter(column):
status, country = column.split("_")
return status, country
# apply this function to that column and assign to two new columns
ebola[['status', 'country']] = ebola['variable'].apply(splitter)
我得到的错误是
ValueError: Must have equal len keys and value when setting with an iterable
我希望我的输出像这样
答案 0 :(得分:1)
ebola[['status','country']]=ebola['variable'].str.split(pat='_',expand=True)