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