如何从行和列引用返回数据帧值?

时间:2016-06-08 11:16:16

标签: python pandas indexing dataframe scalar

我知道这可能是一个基本问题,但不知怎的,我无法找到答案。我想知道如果我知道要查找的行和列,如何从数据框中返回值?例如。如果我的数据框包含1-4列和A-D行,那么我如何返回B4的值?

2 个答案:

答案 0 :(得分:2)

您可以使用ix

In [236]:
df = pd.DataFrame(np.random.randn(4,4), index=list('ABCD'), columns=[1,2,3,4])
df

Out[236]:
          1         2         3         4
A  1.682851  0.889752 -0.406603 -0.627984
B  0.948240 -1.959154 -0.866491 -1.212045
C -0.970505  0.510938 -0.261347 -1.575971
D -0.847320 -0.050969 -0.388632 -1.033542

In [237]:
df.ix['B',4]

Out[237]:
-1.2120448782618383

答案 1 :(得分:0)

如果行为A-D且列1-4,则使用at

print (df.at['B', 4])

如果行是1-4和列A-D

print (df.at[4, 'B'])

Fast scalar value getting and setting

样品:

df = pd.DataFrame(np.arange(16).reshape(4,4),index=list('ABCD'), columns=[1,2,3,4])
print (df)
    1   2   3   4
A   0   1   2   3
B   4   5   6   7
C   8   9  10  11
D  12  13  14  15

print (df.at['B', 4])
7

df = pd.DataFrame(np.arange(16).reshape(4,4),index=[1,2,3,4], columns=list('ABCD'))
print (df)
    A   B   C   D
1   0   1   2   3
2   4   5   6   7
3   8   9  10  11
4  12  13  14  15

print (df.at[4, 'B'])
13