Py学习  »  Python

如何在Python中仅从dataframe获取单个值

asmgx • 3 年前 • 1379 次点击  

我的数据框是这样的

      id    name        age     major
----------------------------------------
0     1     Mark        34      English
1     2     Tom         55      Art
2     3     Peter       31      Science
3     4     Mohammad    23      Math
4     5     Mike        47      Art
...

我正在努力了解major的价值(仅限于此)

我用了这个,当我知道记录的id时,它工作得很好

df_my["major"][3]

返回

"Math"

太棒了

但我想获得一个可变记录的专业

我曾经

i = 3
df_my.loc[df_my["id"]==i]["major"]

而且还用

i = 3
df_my[df_my["id"]==i]["major"]

但他们都回来了

3     Math

它还包括记录索引

我怎么能只考专业而不考别的?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/133050
 
1379 次点击  
文章 [ 1 ]  |  最新文章 3 年前
enke
Reply   •   1 楼
enke    3 年前

你可以用 squeeze :

i = 3
out = df.loc[df['id']==i,'major'].squeeze()

另一个选择是 iat :

out = df.loc[df['id']==i,'major'].iat[0]

输出:

'Science'