我有一个大的数据帧(大约2500x2500),我想在其中选择所有符合条件的值(在这个特定的情况下,这些值是>;50)然后把它们读成几列
我有以下代码来选择这些值>;不过,把它变成我所缺少的列是有点困难的
data[(data >= 50)]
我的数据的一个小版本是
AAAA BBBB CCCC DDDD EEEE FFFF GGGG HHHH IIII
AAAA 80 4 0 65 17 32 42 93 27
BBBB 4 21 37 256 12 0 1 32 62
CCCC 0 37 0 32 67 34 2 0 26
DDDD 65 256 32 12 8 31 53 61 1
EEEE 17 12 67 8 8 3 74 1 6
FFFF 32 0 34 31 3 23 15 93 23
GGGG 42 1 2 53 74 15 180 123 32
HHHH 93 32 0 61 1 93 123 8 7
IIII 27 62 26 1 6 23 32 7 10
我想得到的是一个列表,列1作为索引,列2作为标题,然后是任何大于50的值
index Header Value
AAAA AAAA 80
AAAA DDDD 67
AAAA HHHH 93
BBBB DDDD 256
BBBB IIII 62
CCCC EEEE 67
DDDD BBBB 256
DDDD GGGG 53
DDDD HHHH 61
EEEE CCCC 67
EEEE GGGG 74
FFFF HHHH 93
GGGG EEEE 74
GGGG GGGG 180
GGGG HHHH 123
HHHH AAAA 93
HHHH DDDD 61
HHHH FFFF 93
HHHH GGGG 123
IIII BBBB 62
实现这一点的一种方法是使用
pandas.melt()
。首先,需要从数据帧的索引创建一个id变量:您可以在熔化数据帧(即从宽格式改为长格式)之后,将id\u vars指定为“index”列:
数据如下所示:
最后一步是筛选出具有
value >= 50
的所有行:这将为您提供所需的输出:
相关问题 更多 >
编程相关推荐