简体   繁体   English

Python 脚本工作但抛出错误 - pandas.errors 标记数据,预期 9 个字段看到 10 个

[英]Python script works but throws error - pandas.errors tokenizing data , Expected 9 fields saw 10

I am new to python.我是python的新手。 I am trying to read json response from requests and filtering using pandas to save in csv file.我正在尝试从请求中读取 json 响应并使用 Pandas 进行过滤以保存在 csv 文件中。 This script works and gives me all the data but its throws this error after execution -该脚本有效并为我提供了所有数据,但在执行后会引发此错误 -

I am not able to figure out why its throwing this error ?我不明白为什么会抛出这个错误? How can I pass this error ?我怎样才能通过这个错误?

Error -错误 -

 script.py line 42, in <module>
 df = pd.read_csv("Data_script4.csv")
 File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-    
 packages/pandas/io/parsers.py", line 686, in read_csv
 return _read(filepath_or_buffer, kwds)
 File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-   
 packages/pandas/io/parsers.py", line 458, in _read
 data = parser.read(nrows)
 File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-   
 packages/pandas/io/parsers.py", line 1196, in read
 ret = self._engine.read(nrows)
 File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-  
 packages/pandas/io/parsers.py", line 2155, in read
 data = self._reader.read(nrows)
 File "pandas/_libs/parsers.pyx", line 847, in pandas._libs.parsers.TextReader.read
 File "pandas/_libs/parsers.pyx", line 862, in   
 pandas._libs.parsers.TextReader._read_low_memory
 File "pandas/_libs/parsers.pyx", line 918, in pandas._libs.parsers.TextReader._read_rows
 File "pandas/_libs/parsers.pyx", line 905, in   
 pandas._libs.parsers.TextReader._tokenize_rows
 File "pandas/_libs/parsers.pyx", line 2042, in pandas._libs.parsers.raise_parser_error
 pandas.errors.ParserError: Error tokenizing data. C error: Expected 9 fields in line 53,    
 saw 10

This is my script -这是我的剧本——

if __name__ == '__main__':

    parser = argparse.ArgumentParser("gets data")
    parser.add_argument("-o" , dest="org", help="org name")
    parser.add_argument("-p" , dest="pat", help="pat value")
    args = parser.parse_args()
    org  = args.org
    token = args.pat

    url = "https://dev.azure.com/{org_name}/_apis/git/repositories?  
    api- 
    version=6.0".format(org_name=org)

    data = getproject(url,token) 
    data_file=open("Data_script4.csv", "w",newline='')
    val=data['value']
    csv_writer = csv.writer(data_file)


    for i in val:
        if count==0:
           header=i.keys()
           csv_writer.writerow(header)
           count +=1
        
    csv_writer.writerow(i.values())
    
    pro_name=[]
    time=[]

    df = pd.read_csv("Data_script4.csv")
    for i in df["project"]:
    res = ast.literal_eval(i) 
    pro_name.append(res['name'])
    time.append(res['lastUpdateTime'])

    del df["project"]
    df["project name"] = pro_name
    df["lastUpdateTime"] = time


    df =df[["id","name","url","project   
    name","lastUpdateTime","defaultBranch","size","remoteUrl","sshUrl","webUrl"]]
    df.head()
    df.to_csv("Data_Filtered.csv",index=False)

    print("\nFile Created Successfully...")
    data_file.close() 
    os.remove('Data_script4.csv')

How can I resolve this issue ?我该如何解决这个问题?

Your question was answered here您的问题已在此处得到解答

Here's the takeaway:这是外卖:

You need to substitute:你需要替换:

df = pd.read_csv("Data_script4.csv")

with this:有了这个:

df = pd.read_csv('Data_script4.csv', error_bad_lines=False)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Python:pandas.errors.ParserError:错误标记数据。 C 错误:预计第 21 行中的 1 个字段,看到 2 - Python: pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 21, saw 2 ParserError:标记数据时出错。 C 错误:第 4 行预期有 7 个字段,在读取 csv 文件 pandas 时看到 10 个错误 - ParserError: Error tokenizing data. C error: Expected 7 fields in line 4, saw 10 error in reading csv file pandas Python:消除多余的逗号(错误标记数据。C错误:第29行中应有3个字段,见4) - Python: eliminate extra comma (Error tokenizing data. C error: Expected 3 fields in line 29, saw 4) Pandas - 标记化数据预期 1 个字段看到多个 - Pandas - Tokenizing Data Expected 1 field saw multiple 标记数据时出错。 C错误:第9行中应有2个字段,看到16个,但该行中没有多余的数据 - Error tokenizing data. C error: Expected 2 fields in line 9, saw 16 but no extra data in that line ParserError:标记数据时出错。 C错误:第2624行中预期有2503个字段,看到52523 - ParserError: Error tokenizing data. C error: Expected 2503 fields in line 2624, saw 52523 ParserError:标记数据时出错。 C 错误:第 6 行预期有 4 个字段,看到 5 个 - ParserError: Error tokenizing data. C error: Expected 4 fields in line 6, saw 5 ParserError:错误标记数据。 C 错误:第 32 行需要 1 个字段,但看到了 2 个 - ParserError: Error tokenizing data. C error: Expected 1 fields in line 32, saw 2 当将文本文件中的列表读取到 pandas 数据框列时,面临` ParserError: 标记数据时出错。 C 错误:预计第 3 行中有 16 个字段,看到 21 ` - When read lists from text file into pandas dataframe column face ` ParserError: Error tokenizing data. C error: Expected 16 fields in line 3, saw 21 ` 标记数据时出错。 C错误:第j行中应有n个字段,忽略了多余的列,从而解决了k个问题? - Error tokenizing data. C error: Expected n fields in line j, saw k fix by ignoring extra columns?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM