0
在我的数据框DF中,我有一个名为'A'的列,它的值是整数值。然而,当我想要检索的值,使用返回熊猫数据框中特定列的int值
DF[DF.someCondition=condition].A
返回形状(1)的对象的特定行是不是int,因为INT不具有的形状。我想int,因为我想用这个值作为另一个numpy数组的索引条目。我如何检索A的值以便它是一个int值?
在我的数据框DF中,我有一个名为'A'的列,它的值是整数值。然而,当我想要检索的值,使用返回熊猫数据框中特定列的int值
DF[DF.someCondition=condition].A
返回形状(1)的对象的特定行是不是int,因为INT不具有的形状。我想int,因为我想用这个值作为另一个numpy数组的索引条目。我如何检索A的值以便它是一个int值?
一般而言,形式
DF.someCondition = condition
的条件可以比一次真更多。这就是为什么
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
谢谢。它完美的作品。 – HimanAB
试试这个:'DF.loc [DF.someCondition = condition,'A']' – MaxU
这是错误的。我不想要一个位置。我想要A – HimanAB
的价值你尝试过吗? – MaxU