gpt4 book ai didi

python - Python中如何指定列的范围而不是一一输入?

转载 作者:行者123 更新时间:2023-12-04 15:23:43 27 4
gpt4 key购买 nike

我有以下 CSV 格式的数据表:

    Dilution    Lotus1  Lotus2  Lotus3  Lotus5  Lotus6a Lotus6c Lotus7  Lotus8
0 1.301030 0.7769 0.1884 0.3076 0.3066 1.5722 2.1263 0.3414 1.3695
1 1.778151 0.3767 0.2567 0.1872 0.1902 1.1285 1.9726 0.2267 0.7549
2 2.301030 0.2267 0.2049 0.1454 0.1483 0.6637 1.7816 0.1720 0.4223
3 2.778151 0.1519 0.1507 0.1194 0.1174 0.3244 1.4958 0.1452 0.2062
4 3.301030 0.1234 0.1256 0.1270 0.1440 0.2273 1.3553 0.1383 0.1705
5 3.778151 0.1151 0.1190 0.1166 0.1143 0.1402 0.7333 0.1218 0.1295
6 4.301030 0.1213 0.1219 0.1201 0.1209 0.1335 0.4217 0.1241 0.1279
7 4.778151 0.1145 0.1181 0.1144 0.1196 0.1205 0.2609 0.1259 0.1219

并且我使用 trapz(x,y) 函数计算了 8 个 Lotus 样本中每个样本的曲线下面积 (AUC):

from numpy import trapz

x = (elisa.Lotus1, elisa.Lotus2, elisa.Lotus3, elisa.Lotus5, elisa.Lotus6a, elisa.Lotus6c, elisa.Lotus7, elisa.Lotus8)
y = (elisa.Dilution)

AUC = trapz(x,y)

[0.77020294 0.56251883 0.50852258 0.51922454 1.71261157 4.44964193
0.57552938 1.26143932]

现在,因为我是一个 python 初学者,我在这里做的是手动输入 x 轴的所有列的名称,所以我的问题是:告诉 python 批量应用相同函数的语法是什么到一系列列,如列 2-9 或 Lotus1-Lotus8?我在绘图时也遇到了同样的问题,因为我使用了这段代码:

import matplotlib.pyplot as plt
plt.style.use('ggplot')

x = ('elisa.Lotus1', 'elisa.Lotus2', 'elisa.Lotus3', 'elisa.Lotus5', 'elisa.Lotus6a', 'elisa.Lotus6c', 'elisa.Lotus7', 'elisa.Lotus8')
y = (0.77020294, 0.56251883, 0.50852258, 0.51922454, 1.71261157, 4.44964193, 0.57552938, 1.26143932)

我已经在网上搜索过,但没有找到专门帮助我解决这个问题的资源,而且我有数百列要处理,所以这段代码真的很方便!

有人知道怎么做吗?

最佳答案

尝试添加 axis = 0

np.trapz(elisa.loc[:,'Lotus1':],elisa.Dilution,axis=0)
array([0.77020283, 0.56251879, 0.50852253, 0.51922449, 1.71261136,
4.44964163, 0.57552932, 1.26143913])

关于python - Python中如何指定列的范围而不是一一输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62766600/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com