我正在尝试将.csv文件数据保存到数组中,然后应用我的逻辑。
图像显示CSV数据:
import csv
import matplotlib.pyplot as plt
from numpy import *
A = []
B = []
X = []
f = open('1.csv')
csv_f = csv.reader(f)
for row in csv_f:
B.append(row[0])
A.append(row[1])
X.append(row[2])
a = 0
b =1
y = (a+(X-A)*(b-a))/(B-A)
z = array([y])
print (z)
运行此代码时出现错误
TypeError:不支持的操作数类型 - :' list'和'列出'
答案 0 :(得分:0)
不幸的是,我不能简单地评论你的问题,因为我的声誉不够高,但在我看来你没有对这个问题做过任何研究,因为它只是简单2行代码。而不是只是告诉你答案我想鼓励你研究python中的循环,但是由于没有在这个框中实际回答你的问题而有失去代表的风险,你有两种方法可以完成你的任务:
这些方法基于以下假设:等式中的A,B和X是每个数组的索引值,并且它们都具有相同的长度
方法1 - 简单的循环
for i in range(len(A)):
c = (a + (X[i] - A[i]) * (b - a)) / (B[i] - A[i])
方法2 - 用于带有压缩数组/列表的循环
for i, j, k in zip(A, B, X):
c = (a + (k - i) * (b - a)) / (j - i)