[英]Extracting values from pandas DataFrame using a pandas Series
我認為這個索引就是您要尋找的。
pd.Series(np.diag(df.loc[ser,ser.axes[0]]), index=df.columns)
df.loc
允許您基於字符串索引進行索引。 你從在給定值的行ser
(在第一個位置參數df.loc
)和你的標簽,讓您的列位置ser
(我不知道是否有更好的方法來從一系列的比得到的標簽ser.axes[0]
)。 所需的值沿結果的主要對角線,因此只取對角線並將其與列標簽關聯。
僅當您的DataFrame使用整數行索引,或者Series值的數據類型與DataFrame行索引匹配時,我之前給出的索引才有效。 如果您有一個具有非整數行索引的DataFrame,但仍想獲取基於整數行的值,請使用以下內容(但是,您系列中的所有索引必須在DataFrame的范圍內,而對於例如,“ AAL”為1758,只有12行):
pd.Series(np.diag(df.iloc[ser,:].loc[:,ser.axes[0]]), index=df.columns)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.