【发布时间】:2018-05-24 01:15:21
【问题描述】:
我已经像这样初始化了一个数据框:
df = pd.DataFrame(columns=["stockname","timestamp","price","volume"])
df.timestamp = pd.to_datetime(df.timestamp, format = "%Y-%m-%d %H:%M:%S:%f")
df.set_index(['stockname', 'timestamp'], inplace = True)
现在我从某个地方获取数据流,但为了程序,让我这样写:
filehandle = open("datasource")
for line in filehandle:
line = line.rstrip()
data = line.split(",")
stockname = data[4]
price = float(data[3])
timestamp = pd.to_datetime(data[0], format = "%Y-%m-%d %H:%M:%S:%f")
volume = int(data[6])
df.loc[stockname, timestamp] = [price, volume]
filehandle.close()
print df
但这会报错:
ValueError: 无法使用长度与值不同的多索引选择索引器进行设置
【问题讨论】:
-
可以添加
"datasource"的样本吗? -
您知道,您不必做所有繁重的条带化、拆分工作,只需使用
pd.read_csv。如果您添加文本文件示例,我将向您展示如何做到这一点。
标签: python pandas python-2.7 dataframe indexing