问题遇到的现象和发生背景
通过循环得到p,q。结果截图里显示了尝试写入的结果,发现写入的是固定的值而不是每个p,q的值
问题相关代码,请勿粘贴截图
import numpy as np
import pandas as pd
data = pd.read_csv("C:/Users/DELL/Desktop/dt1.csv", header=0, usecols=['v'])
data = np.array(data)
T=[] #定义为列表
V=0 #初始成交量
p=0
p=[]
q=[]
A=326881602 #每个交易篮子的交易量
for i in range(len(data)):
V=V+data[i] #迭代,成交量=上一时刻成交量+这一时刻的成交量
k=np.ceil(V/A) #对篮子数向上取整
T.append(k)
T[i]=k #第i时刻所需要的篮子数
p.append(0)
p[i]=0
if np.ceil(V/A)-V/A==0: #篮子数为整数
p.append(1)
p[i]=1 # p[i]=1#如果篮子数为整数,那么下一时刻从新的交易篮子开始填充
q.append(T[i])
q[0]=[1,T[0]] #第一个时刻对应的篮子编号
for i in range(len(data)):
if i>=1:
q[i] = [T[i - 1] + p[i - 1], T[i]]
print(T)
print(p)
print(q)
print(type(p))
print(type(q))
filepath = 'C:/Users/DELL/Desktop/dt1.csv'
dataheader = ['date','time','v','p','vum']
data_original = pd.read_csv(filepath, sep=',' ,header=0, names=dataheader, skip_blank_lines=True)
print(data_original)
data_original['e']='p'
data_original['q']='[T[i - 1] + p[i - 1], T[i]]'
print(data_original)
运行结果及报错内容
我想要达到的结果
想把q这个list写进dataframe里应该怎么办