【发布时间】:2019-07-20 02:40:08
【问题描述】:
我已将 excel 导入数据框。它看起来像这样:
然后我使用代码根据“tx_id”对这些数据进行分组,并创建名为 tx_id 的单独 csv,它为我提供了这样的数据 (3e6737ae-c3af-4d19-a645-d17fc73dbb7c.csv)。这是代码:
for i, g in dframe.groupby('tx_id'):
g.to_csv('{}.csv'.format(i.split('/')[0]), index=False)
然后我创建了一个仅包含 tx_id 的单独 dframe,然后使用以下代码删除了重复项:
dframe1 = dframe1.drop_duplicates()
现在我的数据框如下所示:
我已将此数据框转换为 csv。现在我想将 csv 文件的名称(即 tx_id 值)与新创建的 csv 中存在的数据进行比较,如果名称匹配,我想将 csv 文件(即 tx_id 值)读入数据框。我曾经手动导入这些 csv 文件,但我有一个很大的数据集,我每次都读取数据并对其进行进一步处理是不可行的。现在我正在做的是将 csv 文件单独导入数据框。我正在使用此代码:
df = pd.read_csv(' ae229a81-bb33-4cf1-ba2f-360fffb0d94b.csv')
这给了我这样的结果:
然后我使用以下代码取消堆叠并应用 value_counts:
df1 = df.groupby('rule_id')['request_id'].value_counts().unstack().fillna(0)
最后的结果是这样的:
我想自动化这个过程,但我不知道怎么做。你们能帮帮我吗?
【问题讨论】:
标签: python pandas csv dataframe