gpt4 book ai didi

python - pandas 中的简单 for 循环

转载 作者:行者123 更新时间:2023-12-01 05:36:02 25 4
gpt4 key购买 nike

我有一个关于 pandas 的简单索引问题。我想做一个简单的 for 循环来遍历数字 1 到 5。我在如何执行此操作时遇到了 pandas 索引问题(尽管我确信它很简单!)

我的粗略代码:

def averaged_rel_track(current_tracks, rel_values):

current_tracks['rel_values']=rel_values
current_tracks=current_tracks.set_index('candidate')

#I would like this line to loop over numbers 1 to 5
b_1= current_tracks.rel_values.loc['1']

我尝试过的:

for i in range(1, 6):
b=current_tracks.rel_values.iloc[i]

for i in range (1, 6):
b = current_tracks.rel_values[i]

for i in range (1, 6):
b=current_tracks.rel_values['i']

以及其他各种类似的变体(包括.ix、.iloc、.loc)

最佳答案

你的第一次尝试看起来还不错;我认为你可以使用:

for i in range(5):
b = current_tracks.rel_values.iloc[i] # by standard 0-based sequence index

for i in range(1, 6):
b = current_tracks.rel_values.loc[i] # by 1-based track number

但是你可能想避免“for i in range(...)”,这不是Pythonic:

for b in current_tracks.rel_values.loc[1:5]: # or .iloc[:5]
...

请注意,.loc[1:5]包含最后一个索引值,而 .iloc 则不包含。这比听起来更直观,因为 .iloc 使用标准 python 索引,而 .loc 支持任何类型的特定于应用程序的索引,并且在非整数情况下可能无法“递增”结束索引。

关于python - pandas 中的简单 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19045939/

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