在pandas数据数组中选择特定的行和列

时间:2016-11-22 12:13:42

标签: python pandas dataframe

希望这是一个快速而简单的方法。仔细查看了pandas.DataFrame文档的内容后,我似乎无法找到我需要的内容。我有一个DataFrame:

           StartDate          End Date
0   10/11/2014 00:00  10/12/2014 12:00
1   12/01/2015 08:00  31/01/2015 07:59
2   15/01/2015 00:00  19/02/2015 15:43

比如说,我想访问StartDate列索引值2的值......即,15/01/2015 00:00这是如何实现的?

3 个答案:

答案 0 :(得分:5)

使用loc

print (df.loc[2, 'StartDate'])
15/01/2015 00:00

或更快at

print (df.at[2, 'StartDate'])
15/01/2015 00:00
In [199]: %timeit (df.loc[2, 'StartDate'])
10000 loops, best of 3: 147 µs per loop

In [200]: %timeit (df.at[2, 'StartDate'])
100000 loops, best of 3: 6.3 µs per loop

答案 1 :(得分:0)

试试这个解决方案:

df.loc[2, 'StartDate']

答案 2 :(得分:0)

除了phynfo和jezrael提供的解决方案外,您还可以

正如jezrael指出的那样,你可能不应该这样做:

df['StartDate'][2]

正如http://codepen.io/elmahdim/pen/sGkvH?editors=0010中所述:

  

粗略规则是任何时候你看到背靠背方括号,] [,   你在寻找麻烦。用.loc [...,...]替换它   你会被设定的。