如何使用python跳过数据集数据类型错误的行

ruyhziif  于 2021-07-13  发布在  Java
关注(0)|答案(2)|浏览(285)

一直致力于数据集的清理和数据的进一步分析,我使用了不同的清理脚本。
每当数据集列之间出现任何不需要的/异常的数据时,我的脚本就会被中止,脚本执行会被卡住,其余的数据不会得到处理。
我尝试使用的脚本:

import pandas as pd 
import numpy as np
pd.options.mode.chained_assignment = None 
df = pd.read_excel(open(r'data.xlsx', 'rb'), sheet_name='sheet1')

我一直期待的是:
我如何处理整个数据集,即使在数据之间出现任何异常/未知的数据类型,跳过并保留错误的数据类型。
任何异常处理方法,我可以使用到这个。
请建议。

0kjbasz6

0kjbasz61#

我想我不太明白这个问题。
我一直都是这样做的从来没有问题。。

import pandas as pd
FileLocation = (r'Test.xlsx')
df = pd.read_excel(FileLocation, sheet_name='sheet1')
print(df.head)

如果您想删除错误的数据,可以使用for-each循环对Dataframe进行更新。
但是,如果您在excel阅读器中将其读取为float时遇到问题,但希望将其作为sting,则可以执行以下操作:

import pandas as pd
FileLocation = (r'Test.xlsx')
df = pd.read_excel(FileLocation, sheet_name='sheet1', converters={'COLLUMN-NAME':str})
print(df.head)

然后你会得到想要的串通作为一个字符串或任何你想要的。

3wabscal

3wabscal2#

如果在初始 read_excel 函数,您可以要求它不要尝试解码数据,而是使用 dtype=object :

df = pd.read_excel(open(r'data.xlsx', 'rb'), sheet_name='sheet1', dtype=object)

相关问题