python - 返回 pandas 数据框中特定列的 int 值

标签 python pandas numpy

在我的数据框 DF 中,我有一个名为“A”的列,它的值是整数值。但是,当我想使用

检索特定行的 A 值时
DF[DF.someCondition=condition].A

它返回一个形状为 (1,) 的对象,该对象不是 int,因为 int 没有形状。我想要 int 因为我想使用这个值作为另一个 numpy 数组的索引条目。如何检索 A 的值,使其成为 int 值?

最佳答案

一般来说,条件的形式为

DF.someCondition = condition

可能不止一次为 True。这就是为什么

DF[DF.someCondition=condition].A

返回形状为(1,)的对象,而不是标量值。 如果您确定条件仅一次为 True,则可以使用 item 提取标量值。

DF[DF.someCondition=condition].A.item()

但是,如 MaxU suggested ,最好使用 .loc 来避免链式索引:

DF.loc[DF.someCondition=condition, 'A'].item()

例如,

import numpy as np
import pandas as pd

df = pd.DataFrame(np.arange(6).reshape(3,2), columns=list('AB'))
df[df['B']==3].A
# 1    2
# Name: A, dtype: int64

df.loc[df['B']==3, 'A'].item()
# 2

关于python - 返回 pandas 数据框中特定列的 int 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40641511/

相关文章:

python - 在 anaconda 中更新 Spyder 后出现内核错误

python - socket.connect() 在内部做什么?

python - 从网上提取表格

python - 匹配 DataFrame 中两个单词之间的字符串

python - 使用欧拉法求解 4D 耦合系统

python - 基于网格的多元三次插值

python - 如何使用 Python 打开 "~/.bash_profile"

Python APScheduler 异常管理

python - 错误从 groupby 中的重复轴重新索引

matlab - 如何从 NumPy 数组中包含的样本中播放声音?