Python Can';对于2×2 numpy数组,将序列乘以非int类型文件

Python Can';对于2×2 numpy数组,将序列乘以非int类型文件,python,arrays,python-3.x,list,numpy,Python,Arrays,Python 3.x,List,Numpy,错误消息: import numpy as np import math import matplotlib.pyplot as plt values=open('Q_wk10_data.txt','r') valuesx=[] valuesy=[] for row in values: valuesx.append(int(row)) for row2 in valuesx: valuesy.append(int(row2)**2) plt.plot(valuesx,

错误消息:

    import numpy as np
import math
import matplotlib.pyplot as plt

values=open('Q_wk10_data.txt','r')
valuesx=[]
valuesy=[]
for row in values:
    valuesx.append(int(row))
for row2 in valuesx:
    valuesy.append(int(row2)**2)
plt.plot(valuesx,valuesy)
plt.xlabel="x"
plt.ylabel="y"
plt.show()

X=np.array([[valuesx,valuesy],[10,10]])
theta=(-10*math.pi)/180
M=np.array([[math.cos(theta),-math.sin(theta)],[math.sin(theta),math.cos(theta)]])
XM=np.dot(X,M)
回溯(最近一次呼叫最后一次):
文件“C:/Users/ads/Downloads/PRACT/qwk10.py”,第20行,在
XM=np.点(X,M)
TypeError:无法将序列与“float”类型的非int相乘

我已经将包含列表valuesx和valuesy的数组转换为整数,但我无法对创建的其他数组进行点积。

根据我从问题中了解的内容,我已修复了您的代码。此行
X=np。数组([[valuesx,valuesy],[10,10]])
出错,因为它将矩阵
X
的形状更改为
[3,N]
,这是不期望的。以下是需要更改的代码:

X=np.array([np.array(valuesx),np.array(valuesy)])
XM=np.点(X,M)

请包含完整的错误消息。您的
X是什么?valuesx和valuesy是[1,2,3,4,5,6,6,7,8,9,10]和[1,4,9,16,25,36,49,81100]您的
X有点奇怪的形状:
数组([[list([1,2,3,4,5,6,7,8,9,9,10]),list([1,4,9,9,16,25,36,64,81,100]),[10],dtype=object对象)
。这是你想要的吗?不能将其乘以M。创建一个(2,N)数组X,其中包含X和y值。(N表示文件Q_wk10_data.txt中x的值的数量。)创建另一个(2,2)数组以包含以下矩阵:M=[■(cos)⁡(θ) 安信⁡(θ) @sin⁡(θ) &cos⁡(θ) )]式中,θ为(-10π)/180弧度。(M称为旋转矩阵。)将数组X乘以数组M。这将导致另一个(2,N)数组,例如X_r(即X_r=MX)。将此新数组第二行中的值与上图(c)中第一行中的值进行对比。这些是我该怎么做的问题
Traceback (most recent call last):
  File "C:/Users/ads/Downloads/PRACT/qwk10.py", line 20, in <module>
    XM=np.dot(X,M)
TypeError: can't multiply sequence by non-int of type 'float'