我有一个表示电信号的大数据集(作为数组),它需要作为数据帧传递给另一个函数。问题是dataframe必须有一个带有freq属性的索引,并且原始数据集没有时间戳,1d数组和样本,但是我知道样本频率(86Hz),所以我可以为每个样本分配一个时间戳:
>>>a = [1,2,3,4,5,6]
>>>b = []
>>>j=0
>>>for i in a:
>>> b.append(round(j, 3))
>>> j = j+(1/86)
>>>c = np.c_[b, a]
([[ 0. , 1. ],
[ 0.012, 2. ],
[ 0.023, 3. ],
[ 0.035, 4. ],
[ 0.047, 5. ],
[ 0.058, 6. ]])
然后我把它转换成一个数据帧:
d = pd.DataFrame(data=c[0:,1], index=c[0:,0])
0
0.000 1.0
0.012 2.0
0.023 3.0
0.035 4.0
0.047 5.0
0.058 6.0
问题是索引没有freq属性,我认为这是一个格式问题,但不确定,在google搜索了一番之后,我什么也没找到。你知道吗
当我写的时候:
d.index.freq
它应该返回86,但是给我一个:
AttributeError: 'Float64Index' object has no attribute 'freq'
顺便说一下,时间戳以秒为单位,从第一个样本开始。。。或者这就是我的意图。你知道吗
如果我理解正确,你可以这样做:
相关问题 更多 >
编程相关推荐