我正试图用python做一些计算,使用一个包含几行和三列的excel.

madrid = pd.read_excel('Madrid.xlsx')

ch = []

d=[]
  
L = 8.4

for i in range(0, len(madrid)):

    ch[i] = 0.8 + (1.1*math.log10(madrid['Band'][i]) - 0.7)*madrid['Antenna_Height'][i] - 1.56*math.log10(madrid['Band'][i])

    d[i] = ((L - 69.55 - 26.16*math.log10(madrid['Band'][i]) + 13.82*math.log10(madrid['Antenna_Height'][i]) + ch[i])/(44.9 - 6.55*math.log10(madrid['Antenna_Height'][i])))**10

    madrid['Colors'][i] = d[i]

推荐答案

列表ch为空,因此调用任何元素索引(如ch[0]ch[1])将导致错误"列表索引超出范围"

我看到你正试图添加到各种列表中.你可以试试(但我不确定公式,请判断一下)

import math

madrid = pd.read_excel('Madrid.xlsx')
ch = []
d=[]
L = 8.4

for i in range(0, len(madrid)):
    ch_temp = 0.8 + (1.1*math.log10(madrid['Band'][i]) - 0.7)*madrid['Antenna_Height'][i] - 1.56*math.log10(madrid['Band'][i])
    ch.append(ch_temp)
    d_temp = ((L - 69.55 - 26.16*math.log10(madrid['Band'][i]) + 13.82*math.log10(madrid['Antenna_Height'][i]) + ch[i])/(44.9 - 6.55*math.log10(madrid['Antenna_Height'][i])))**10
    d.append(d_temp)
    madrid['Colors'][i] = d[i]

print(madrid)

输出:

   Band  Antenna_Height      Colors
0     1               3   18.262619
1     2               3   62.881852
2     3               3  121.442224
3     4               3  188.948366
4     5               3  262.794745
5     6               3  341.404788

Python相关问答推荐

试图找到Python方法来部分填充numpy数组

通过Selenium从页面获取所有H2元素

如何获得每个组的时间戳差异?

如果值发生变化,则列上的极性累积和

如何在Python中找到线性依赖mod 2

未知依赖项pin—1阻止conda安装""

Django RawSQL注释字段

名为__main__. py的Python模块在导入时不运行'

如何将数据帧中的timedelta转换为datetime

使用嵌套对象字段的Qdrant过滤

如何将返回引用的函数与pybind11绑定?

提取最内层嵌套链接

当输入是字典时,`pandas. concat`如何工作?

如何在Django模板中显示串行化器错误

Pythonquests.get(Url)返回Colab中的空内容

将相应的值从第2列合并到第1列(Pandas )

如何在PYTHON中向单元测试S Side_Effect发送额外参数?

使用Scikit的ValueError-了解

生产者/消费者-Queue.get by list

搜索结果未显示.我的URL选项卡显示:http://127.0.0.1:8000/search?";,而不是这个:";http://127.0.0.1:8000/search?q=name";