将数值转换为分类值后,使用 pandas 分析生成不稳定的报告

问题描述 投票:0回答:1

我目前正在使用 pandas 进行分析,但在创建正确的报告时遇到问题。因为当我刚刚读取 csv 文件时,列的数据类型错误。这些值不是分类值,而是标记为数值。当我现在尝试在 read_csv 方法中定义特定数据类型时,报告的创建会停留在某个点并且需要很长时间(我在 30 分钟后取消了它)。当我不更改值的数据类型时,报告会在不到一分钟的时间内完成。

这也是 df_data.isnull().sum() 的输出:

A                   0
B                   0
C                   3
D                   0
E                   0
F                   0
G               86317
H                  39
I                6871
J                   0

我尝试在 read_csv 中转换数据类型:

df_data = pd.read_csv('example.csv', parse_dates=['A', 'B'], dtype={
    'C' : 'string',
    'D' : 'string',
    'E' : 'string'
}
)

我还尝试在正常的 read_csv 之后使用 dtypes() 转换数据类型:

df_data = pd.read_csv('example.csv')
df_data['C'] = df_data['A'].astype(str)
df_data['D'] = df_data['A'].astype(str)
df_data['E'] = df_data['A'].astype(str)

两种方式都有相同的结果:报告中途卡住

python pandas report profiling pandas-profiling
1个回答
0
投票

我转换了type_schema中的数据,如下所示:

df_data = pd.read_csv('example.csv') 类型模式 = { 'A' : '日期时间', 'B':'绝对', 'C' : '绝对', 'D':'绝对', 'E':'绝对', 'F' : '绝对', 'G':'绝对', 'H':'绝对', “我”:“绝对” } 配置文件 = ProfileReport(df_data, type_schema=type_schema)

© www.soinside.com 2019 - 2024. All rights reserved.