Python:如果使用str.Split无法使用分隔符,则拆分字符串

2024-09-28 22:38:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图根据|分隔符分割以下数据。如果响应中只有一个值可用(无分隔符),则应转到dataframe的“回答无问题”列

代码:

answers_df[['Question','answers']] = answers_df.response.str.split("|",expand=True)

数据:

Assortments  | 5
6
product | 8

预期结果:

name       rating
-----       ------
Assortments  5
NAN          6
product      8

Tags: 数据代码nametruedataframedfresponseproduct
1条回答
网友
1楼 · 发布于 2024-09-28 22:38:48

这里有一种方法,在前面附加None的想法:

df['ans2'] = df['ans'].str.split('|').apply(lambda x: [None] + x if len(x) < 2 else x)

df[['q1', 'a1']] = df['ans2'].apply(pd.Series)

df = df.drop('ans2', axis=1)

             ans         name rating
0  Assortments|5  Assortments      5
1              6         None      6
2      product|8      product      8

样本数据

l=["Assortments|5", "6", "product|8"]
df = pd.DataFrame({"ans": l})

相关问题 更多 >