KeyError:'record\u id'用于记录\u id上的CSV合并

2024-04-25 14:56:49 发布

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

我正在尝试将7.csv文件合并到1。我已经处理了大部分错误,但是现在有了KeyError:'record\u id'。 我是一个初学者,我只是在用Python来完成我的这一部分工作。你知道吗

我已经成功地为excel中的一个类似的数据样本做了这个,但是所有的表都在一个文件中。现在我有一个完整的数据集,它是提供给我在7个单独的csv文件。你知道吗

我展示的是一个简短的版本,前两个文件的初始合并:

import io as io
from io import StringIO
import pandas as pd
import numpy as np
import os, collections, csv
from os.path import basename

df = []


f0 = r'C:\PythonWorking\xxxData\SYLK_fix\FeMRExportDataFile0.csv'
f1 = r'C:\PythonWorking\xxxData\SYLK_fix\FeMRExportDataFile1.csv'


data_0 = pd.read_csv((io.StringIO(f0)))
data_1 = pd.read_csv((io.StringIO(f1)))


df = pd.merge(data_0, data_1, on='record_id', how='outer')

Final_csv = r'C:\PythonWorking\xxxData\SYLK_fix\FeMRExportDataFile0_6Merged.csv'

df.to_csv(Final_csv)

exit(0)

错误消息:

PS C:\Users\xxxx> & C:/Users/xxxx/AppData/Local/Programs/Python/Python37-32/python.exe c:/PythonWorking/xxxData/SampleNIJJoin_V4_CSVs.py
Traceback (most recent call last):
  File "c:/PythonWorking/xxxhData/SampleNIJJoin_V4_CSVs.py", line 32, in <module>
    df = pd.merge(data_0, data_1, on='record_id', how='outer')
  File "C:\Users\xxxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\reshape\merge.py", line 81, in merge
    validate=validate,
  File "C:\Users\xxxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\reshape\merge.py", line 626, in __init__
    ) = self._get_merge_keys()
  File "C:\Users\xxxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\reshape\merge.py", line 975, in _get_merge_keys
    right_keys.append(right._get_label_or_level_values(rk))
  File "C:\Users\xxxx\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\generic.py", line 1774, in _get_label_or_level_values
    raise KeyError(key)
KeyError: 'record_id'

我希望输出会给我一个csv,它是记录id上所有变量的左连接

小样本的数据:列(变量)将加起来超过800当我完成。 See Data sample image


Tags: csvpyioimportidpandasdatalocal