【发布时间】:2014-05-05 15:18:08
【问题描述】:
使用records = pandas.read_json(path) 将 JSON 文档导入 pandas 数据帧,其中路径是 JSON 文档的预定义路径,我发现生成的数据帧“记录”的某些列的内容并不像预期的那样简单的字符串.相反,这样一列中的每个“单元格”都是一个数组,包含一个元素——感兴趣的字符串。这使得使用布尔索引选择列变得困难。例如,Ipython 中的records[records['category']=='Python Books'] 输出一个空数据帧;如果“单元格”包含字符串而不是字符串数组,则输出将是非空的,包含对应于 python 书籍的行。
我可以修改 JSON 文档,以便“记录”正确读取字符串。但是有没有办法直接修改“记录”,以某种方式将单元素数组剥离到元素本身?
【问题讨论】:
-
听起来你在做标准化? pandas.pydata.org/pandas-docs/stable/io.html#normalization(可以举个实际的例子!):)
-
谢谢安迪。我没有尝试对 json 本身进行规范化,但看起来我可以这样做来解决问题。我会在下一个 json 输出中尝试。