【发布时间】:2019-09-23 21:11:38
【问题描述】:
我正在尝试将 JSON 文件转换为数据框。我创建的数据框有两列:time 和 sumOfFFT。它们都是浮点数。 sumOfFFT 是 float 类型,time 是 object 类型,列中的每一行都是带有数字的 list。
我尝试使用 to_numeric 并且所有数字都转换为 NaN,因为它是 list 对象。我也尝试过Series,但效果相同。我正在尝试将每一行中的列表对象转换为字符串,然后浮动,但它会引发错误。
a = float(str(frame.iloc[1]['time']))
print(a)
ValueError Traceback (most recent call last)
<ipython-input-75-2f41310a23f7> in <module>()
----> 1 a = float(str(frame.iloc[1]['time']))
2 print(a)
ValueError: could not convert string to float: '[0.0001041666667]'
数据格式:
{
"fft": {
"time": [
[0],
[0.0001041666667],
[0.0002083333333],
[0.0003125],
],
"sumOfFFT": [2.883648107,2.769599456,2.659837554,2.560352381]
}
}
到目前为止的代码:
import json
import pandas as pd
with open('akhil_195682_170628-174745.json') as json_data:
obj = json.load(json_data)
frame = pd.DataFrame(obj['fft'], columns=['time', 'sumOfFFT'])
输出:
time sumOfFFT
0 [0] 2.883648
1 [0.0001041666667] 2.769599
2 [0.0002083333333] 2.659838
3 [0.0003125] 2.560352
我希望将数据转换为 DataFrame,并将两个变量相互绘制。
【问题讨论】:
标签: python python-3.x pandas dataframe type-conversion