我有一个带字符串列的数据框。我需要在col1.split('')之后创建一个包含第3个元素的新列。我试过了
df['col1'].str.split(' ')[0]
但我得到的只是错误。
实际上我需要在"分割之后将col1变成多个列。 "
这样做的正确方法是什么?
答案 0 :(得分:0)
考虑这个df
df = pd.DataFrame({'col':['假设2000大于5']})
col
0 Lets say 2000 is greater than 5
您可以拆分并使用str访问器来获取不同位置的元素
df['third'] = df.col.str.split(' ').str[2]
df['fifth'] = df.col.str.split(' ').str[4]
df['last'] = df.col.str.split(' ').str[-1]
col third fifth last
0 Lets say 2000 is greater than 5 2000 greater 5
答案 1 :(得分:0)
另一种方式是:
df["third"] = df['col1'].apply(lambda x: x.split()[2])