【发布时间】:2015-11-02 01:16:59
【问题描述】:
我有这个代码:
Link to code and data on GitHub.
col_names = {'age_code':'str', 'los_code':'str', 'race_code':'str'}
injuries = pd.read_table(some_url, dtype=col_names)
los_code、age_code 和 race_code 有另一个包含代码的表。例如race_code 是:
race_code race_text
0 0000 All races
1 1XXX White, non-Hispanic
2 2XXX Black, non-Hispanic
3 3XXX Hispanic
4 4XXX Asian or Pacific Islander
5 5XXX American Indian or Alaskan Native
6 NRXX Not reported
阅读后,所有这三个三列都有NaN条目,除非代码为0000。如果列条目是1XXX 到NRXX 中的任何一个,则条目变为NaN。
由于0000 条目,熊猫似乎将列读取为int,但在读取带有X 的条目后感到困惑(可能会混淆它的十六进制)
如何强制 pandas 将这些条目读取为字符串。
此外,我也得到了错误:
DtypeWarning:列 (1,4,5,6,7,8,9) 具有混合类型。在导入时指定 dtype 选项或设置 low_memory=False。 交互性=交互性,编译器=编译器,结果=结果)
【问题讨论】: