我需要使用DataFrame作为不属于索引一部分的列的查找表。例如(这是一个简单的只是为了说明):在熊猫数据框中查找第一个匹配
import pandas as pd
westcoast = pd.DataFrame([['Washington','Olympia'],['Oregon','Salem'],
['California','Sacramento']],
columns=['state','capital'])
print westcoast
state capital
0 Washington Olympia
1 Oregon Salem
2 California Sacramento
可以很容易地查找并获得系列作为输出:
westcoast[westcoast.state=='Oregon'].capital
1 Salem
Name: capital, dtype: object
,但我想获得字符串'塞勒姆:
westcoast[westcoast.state=='Oregon'].capital.values[0]
'Salem'
和.values[0]
似乎有点笨重......有没有更好的方法? (FWIW:我的真实数据最多可能有50行,但是很多列,所以如果我设置了索引列,无论选择哪个列,都会有这样的查找操作,这不是基于一个索引,而较少行的意思是我不介意这是O(n)的查找)
你可以在那里查看答案https://stackoverflow.com/questions/46352688/accessing-arrays-stored-in-pandas-dataframe#comment79665647_46352688 – Wen