gpt4 book ai didi

Python Pandas DtypeWarning 在导入时指定 dtype 选项 - 如何?

转载 作者:太空宇宙 更新时间:2023-11-04 05:50:46 24 4
gpt4 key购买 nike

我有这些列:

['Campaign', 'Ad group', 'Keyword', 'Status', 'Match type', 'Max. CPC', 'Quality score', 'Impressions', 'Clicks', 'CTR', 'Avg. CPC', 'Cost', 'Avg. position', 'Converted clicks', 'Click conversion rate', 'Cost / converted click', 'Bounce rate', 'Pages / session', 'Avg. session duration (seconds)', '% new sessions']

我收到的错误是:

Warning (from warnings module):
File "C:\Python34\lib\site-packages\pandas\io\parsers.py", line 1164
data = self._reader.read(nrows)
DtypeWarning: Columns (5) have mixed types. Specify dtype option on import or set low_memory=False.

Columns (5) 部分是什么意思?那是列位置吗? Campaign 列是从位置 0 还是 1 开始?

另外,我怀疑这个错误是因为我的 Max. CPC 列在一些区域有 ' --' 而不是零。我希望此列数据类型为 float 。如何将这些 ' --' 转换为 0.00 并在读取 CSV 时将此列设置为 float 据类型?

我试过:

import pandas as pd
import numpy as np

df = pd.read_csv('file.csv', dtype={'Max. CPC': pd.np.float64})

print(df.head())

但是得到一个 ValueError:

ValueError: could not convert string to float: ' --'

最佳答案

我可以想到两种方法,一种是传递 read_csv 的值列表可以考虑将其视为 NaN 值,这会将列表中的那些值转换为 NaN,以便该列的数据类型保持为 float 而不是 object:

df = pd.read_csv('file.csv', dtype={'Max. CPC': pd.np.float64}, na_values=[' --'])

然后您可以将这些 NaN 值转换为 0.00 调用 fillna :

df['Max. CPC'] = df['Max. CPC'].fillna(0.00)

另一个是像以前一样加载和replace这些值到 0.00:

df['Max. CPC'] = df['Max. CPC'].replace(' --', 0.00)

关于Python Pandas DtypeWarning 在导入时指定 dtype 选项 - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30314153/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com