为了账号安全,请及时绑定邮箱和手机立即绑定

如何复制和修改熊猫数据框中的行?

如何复制和修改熊猫数据框中的行?

海绵宝宝撒 2021-06-28 12:47:46
我正在尝试使用存储在 txt 文件中的大量数据来构建数据帧。然而,我没有构建数据,所以我不得不处理其中包含的令人沮丧的格式。我无法让我的代码在大数据中工作(并且这样做几乎使我的计算机崩溃),因此设置一个较小的数据框,如下所示:    'Value'             ID_1                ID_20   11122222            ABC42123            333331   21219299            YOF21233            888212   00022011            ERE00091            231243   75643311;21233332   ROB21288            994214   12412421            POW94277            12231;332215   54221721            IRS21231;YOU28137   13123我的挫败感在于在数据中使用了分号。数据旨在表示 ID,但多个 ID 已分配给多个变量。我想重复这些行,以便我可以搜索各个 ID 的数据,并有一个如下所示的数据表:    'Value'             ID_1                ID_20   11122222            ABC42123            333331   21219299            YOF21233            888212   00022011            ERE00091            231243   75643311            ROB21288            994214   21233332            ROB21288            994215   12412421            POW94277            122316   12412421            POW94277            332217   54221721            YOU28137            131238   54221721            IRS21231            13123重新索引不是问题,只要不同的 ID 保持相互链接并保持正确的值。不幸的是,到目前为止,我所有拆分数据的尝试都以失败告终。我设法设置了一个重复包含分号的数据的函数,通过我的函数为每一列解析它,但之后无法拆分数据。def delete_dup(df,column):for a in column:    location = df.loc[df.duplicated(subset= column, keep=False)]    for x in location:        semicolon = df.loc[df[column].str.contains(';', regex=True)]        duplicate = semicolon.duplicated(subset= column, keep='first')        tiny_df = semicolon.loc[duplicate]        split_up = tiny_df[column].str.split(';')        return pd.concat([df, split_up])我觉得这是我最接近的一次,但离我想要的还差得很远。我尝试在数据帧上执行的任何“If”语句都会遇到“ValueError:DataFrame 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或a.all()." 错误,读起来令人沮丧。关于如何让熊猫做我想做的任何想法?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 115 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信