gpt4 book ai didi

python - 根据匹配条件返回数据帧的下一行

转载 作者:行者123 更新时间:2023-12-01 08:48:54 26 4
gpt4 key购买 nike

这是根据前一行中的匹配值获取下一行数据的最有效方法吗?这看起来非常麻烦,但是 Int64Index 类型似乎表现不佳。

df_of_urls = {'ID': [100,101], 'URL': ['https://www.firsturl.com','https://www.secondurl.com']}
df_of_urls = pd.DataFrame.from_dict(df_of_urls)

prior_url = 'https://www.firsturl.com'

next_url = df_of_urls.iloc[df_of_urls[df_of_urls['URL']==prior_url ].index+1,1].values[0]

最佳答案

对系列建立索引比对数据帧建立索引更有效。

# Index using iat accessor
next_url = df_of_urls['URL'].iat[np.where(df_of_urls['URL']==prior_url)[0][0] + 1]

# Index using NumPy array
next_url = df_of_urls['URL'].values[np.where(df_of_urls['URL']==prior_url)[0][0] + 1]

该算法在某些情况下效率较低。即使在数组开头附近满足条件,也始终需要完整迭代。手动循环可以通过在满足条件时立即终止来解决此问题。

另请参阅:Efficiently return the index of the first value satisfying condition in array .

关于python - 根据匹配条件返回数据帧的下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53214228/

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