gpt4 book ai didi

python - 如何轻松地同时遍历行和列?

转载 作者:太空宇宙 更新时间:2023-11-04 02:08:42 37 4
gpt4 key购买 nike

我有以下 df,如果单元格中有数值,则返回索引值和列名:

             A  B  C 

04/04/18 Nan Nan Nan
05/04/19 Nan 4 Nan
06/04/20 Nan Nan 5

输出:

["B-05/04/19","C-06/04/20"]

有没有什么简单的方法可以同时遍历行和列而不需要嵌套循环?

最佳答案

如果列和索引值已排序,请使用 stackdropna最后在列表推导中加入 MulitIndex:

s = df.stack().dropna()
idx = ['{}-{}'.format(b, a) for a, b in s.index]
#python 3.6+
#idx = [f'{b}-{a}' for a, b in s.index]
print (idx)
['B-05/04/19', 'C-06/04/20']

或者获取非 NaN 值的索引,获取索引值并连接在一起:

x, y = np.where(df.notnull())
idx = df.columns[y] + '-' + df.index[x]
print (idx)
Index(['B-05/04/19', 'C-06/04/20'], dtype='object')

关于python - 如何轻松地同时遍历行和列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54109986/

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