以下操作
import pandas as pd
import numpy as np
data = pd.read_csv(fname,sep=",",quotechar='"')
将创建一个650000 x 9数据帧。第一列包含日期,下面的设计是为了将一个日期戳转换为5个单独的特性。在
^{pr2}$我想把这5个值赋给650000x7的np矩阵。在
xtrn = np.zeros(shape=(data.shape[0],7))
xtrn[:,0:4] = np.asarray(data["Dates"].map(timepartition))
#above returns error ValueError: could not broadcast input array from shape (650000) into shape (650000,4)
应用于dataframe的map函数映射到一个新的series对象,通过返回元组,它将作为对象系列返回。在
另一种方法是:。在
对timepartition进行以下更改:
这将返回元组的列表。下面的代码将从具有所需维度的数据帧系列中创建一个矩阵,并将其映射到
^{pr2}$xtrn
。在np-matrix将从嵌套的列表中推断出一个矩阵,将数据的分区函数应用于序列的列表表示,在本例中这是平面的。在
您可以尝试使用一些内置的
pandas
功能。在以下是对我有用的。我不确定哪种方法更快,但我更容易从逻辑上理解发生了什么。这里我的数据集“犯罪”是你的“数据”,我们的时间格式有点不同。在
相关问题 更多 >
编程相关推荐