如何解决如何从numpy数组中提取行,其中col1 = a
我每年有二维温度值数组,其中每年有一些温度值。所以数组看起来像这样:
[[1960,a,b,c,d,e,f ...],[1960,a1,b1,c1,d1,e1,f1 ...],a2,b2,c2,d2,e2,f2 ...],[1961,[1962,f2 ...]....]
我需要为第0列为1961的行提取第1列中的所有内容(因此取所有a值)。
有人知道我会怎么做吗? 谢谢!
解决方法
让L成为您的数组。然后使用以下代码。
L[L[:,1] == 1960][:,0]
,
适用于常规python列表的解决方案:
[item[1] for item in array if item[0]==1961]
其中array
是您的2d输入数组。
使用切片
选择第二个值
a[a[:,0] == '1961',1]
或所有值
a[a[:,0] == '1961']
,
import pandas as pd
raw_data = [[1960,'a','b','c','d','e','f'],[1960,'a1','b1','c1','d1','e1','f1'],'a2','b2','c2','d2','e2','f2'],[1961,'f2']]
data = pd.DataFrame(raw_data)
print(data)
0 1 2 3 4 5 6
0 1960 a b c d e f
1 1960 a1 b1 c1 d1 e1 f1
2 1960 a2 b2 c2 d2 e2 f2
3 1961 a b c d e f
4 1961 a1 b1 c1 d1 e1 f1
5 1961 a2 b2 c2 d2 e2 f2
print(data.loc[data.iloc[:,0] == 1961,1])
3 a
4 a1
5 a2
Name: 1,dtype: object
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。