如何强制 pandas .loc 到 return 系列
how to force pandas .loc to return series
我有一个带有 NAME
索引的 Pandas DataFrame
和一个名为 CLASS
:
的列
df =
CLASS
NAME
John Math
John Science
Lisa Music
现在,如果我提取 df.loc['John', 'CLASS']
,它 returns 一个 Series
,但是如果我提取 df.loc['Lisa', 'CLASS']
,它 returns一个 str
。
有没有办法让我强制返回值为 Series
(即 ['Music', ]
)?之后我需要遍历返回的对象,我不想在 John 的情况下(需要)经历 Math
、Science
,但在 Lisa 的情况下(不需要)经历 M, u, s, i, c
。
要强制 loc
到 return 和 Series
,请将您的索引值包装在列表文字中。
df.loc[['John'], 'CLASS']
NAME
John Math
John Science
Name: CLASS, dtype: object
df.loc[['Lisa'], 'CLASS']
NAME
Lisa Music
Name: CLASS, dtype: object
这会导致 Series
无论如何都要 return 编辑 1(或更多)行。当列表为空时也有效,returning 一个空列表:
df.loc[[], 'CLASS']
Series([], Name: CLASS, dtype: object)
我有一个带有 NAME
索引的 Pandas DataFrame
和一个名为 CLASS
:
df =
CLASS
NAME
John Math
John Science
Lisa Music
现在,如果我提取 df.loc['John', 'CLASS']
,它 returns 一个 Series
,但是如果我提取 df.loc['Lisa', 'CLASS']
,它 returns一个 str
。
有没有办法让我强制返回值为 Series
(即 ['Music', ]
)?之后我需要遍历返回的对象,我不想在 John 的情况下(需要)经历 Math
、Science
,但在 Lisa 的情况下(不需要)经历 M, u, s, i, c
。
要强制 loc
到 return 和 Series
,请将您的索引值包装在列表文字中。
df.loc[['John'], 'CLASS']
NAME
John Math
John Science
Name: CLASS, dtype: object
df.loc[['Lisa'], 'CLASS']
NAME
Lisa Music
Name: CLASS, dtype: object
这会导致 Series
无论如何都要 return 编辑 1(或更多)行。当列表为空时也有效,returning 一个空列表:
df.loc[[], 'CLASS']
Series([], Name: CLASS, dtype: object)