【问题标题】:Delimiter string splitting分隔符字符串拆分
【发布时间】:2019-12-14 14:20:31
【问题描述】:

我有一个数据集,其中一些值由“\n”分隔,一些值由“\n\n”分隔。我已经编写了一些分别适用于每种情况的代码,但我想知道是否有一种方法可以同时包含这两个分隔符,以便将它们拆分为“\n”还是“\n\n”。在当前设置中,它会引发错误“列必须与键长度相同”。

代码:

temp = result['personal_info'].str.replace(' -- ', '|').str.split('|', expand = True)
temp[[1,4]] = temp[1].str.split('\n', expand = True)
temp = temp.rename(columns={0: "occupation", 1: "country", 2: "employer_type", 3: "race", 4: "relationship_status"})
final_df = result
final_df = pd.concat([final_df, temp], axis=1, sort=False)
final_df = final_df.drop('personal_info', axis=1)

此代码适用于“\n”,如果我将其更改为“\n\n”,它适用于“\n\n”。

示例输入:

'Prof-specialty|United-States\n\nNever-married -- Local-gov|White'

'Prof-specialty|United-States\nNever-married -- Local-gov|White'

【问题讨论】:

    标签: python numpy dataframe delimiter


    【解决方案1】:

    您可以在 Pandas 拆分中使用正则表达式:

    temp[[1,4]] = temp[1].str.split('\n+', expand = True)
    

    如果至少有一个\n,则会拆分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-29
      • 2017-12-08
      • 2019-09-19
      • 1970-01-01
      • 2018-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多