这可能是一个非常愚蠢的问题,但我一直在这个网站以及其他网站上搜索,我还没有找到一个有效的答案。我尝试将两个数组相乘,并将值分配给嵌套循环中的二维数组
我有两个变量“汽车”和“报废”。我想将每个元素相乘,创建一个10x10的2D数组
我可以在MATLAB中实现这一点,但我对python还不熟悉,所以我知道我可能没有正确使用Pandas数据帧。我已经试着调试代码,除了数组乘法和分配给2D数组的值之外,所有操作都完全按照它应该的方式运行(创建数据帧、循环等)
我知道这是一个索引错误,我一直收到“IndexError:single positional indexer is out bounds”消息
这是我的密码:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
cars = pd.DataFrame([1000,2000,3000,4000,5000,6000,7000,8000,9000,10000])
scrappage = pd.DataFrame([1,.95,.86,.75,.62,.44,.30,.20,.12,.04])
Fleet = pd.DataFrame([])
i=0
j=0
for i in range(0,len(cars)):
for j in range(0,len(scrappage)):
Fleet.iloc[i,j]= cars.iloc[i,0] * scrappage.iloc[j,0]
#This^ line is causing the error.
j= j+1
i=i+1
我相信这对大多数人来说可能非常简单,但我正在努力解决Pandas语法。提前感谢您的帮助
您应该为它指定适当的索引和列,而不是将
fleet
定义为空数据帧。你可以试试这个:-相关问题 更多 >
编程相关推荐