Pandas:获取数据框中的列表作为行
Pandas: getting a list inside a dataframe as row
我有一个这样的列表:
l1=[1,2,3,4,5,6,7,8]
这个列表应该是一行数据框,我是这样创建的:
df = pd.DataFrame(columns=['A','B','C','D','E','F','G','H'],
index=['l1','l2','l3','l4'])
现在我希望 l1
的值出现在数据框的第一行中。我该怎么做?
我的尝试:
df.loc['l1'] = pd.Series(l1)
但是这个 returns 一个空数据框:
A B C D E F G H
l1 NaN NaN NaN NaN NaN NaN NaN NaN
l2 NaN NaN NaN NaN NaN NaN NaN NaN
l3 NaN NaN NaN NaN NaN NaN NaN NaN
l4 NaN NaN NaN NaN NaN NaN NaN NaN
简单使用list
:
df.loc['l1'] = l1
print (df)
A B C D E F G H
l1 1 2 3 4 5 6 7 8
l2 NaN NaN NaN NaN NaN NaN NaN NaN
l3 NaN NaN NaN NaN NaN NaN NaN NaN
l4 NaN NaN NaN NaN NaN NaN NaN NaN
或添加参数 index
,其值为 df.column
,因为 Series
的 index
必须与 DataFrame
的 columns
相同对齐方式:
df.loc['l1'] = pd.Series(l1, index = df.columns)
print (df)
A B C D E F G H
l1 1 2 3 4 5 6 7 8
l2 NaN NaN NaN NaN NaN NaN NaN NaN
l3 NaN NaN NaN NaN NaN NaN NaN NaN
l4 NaN NaN NaN NaN NaN NaN NaN NaN
我有一个这样的列表:
l1=[1,2,3,4,5,6,7,8]
这个列表应该是一行数据框,我是这样创建的:
df = pd.DataFrame(columns=['A','B','C','D','E','F','G','H'],
index=['l1','l2','l3','l4'])
现在我希望 l1
的值出现在数据框的第一行中。我该怎么做?
我的尝试:
df.loc['l1'] = pd.Series(l1)
但是这个 returns 一个空数据框:
A B C D E F G H
l1 NaN NaN NaN NaN NaN NaN NaN NaN
l2 NaN NaN NaN NaN NaN NaN NaN NaN
l3 NaN NaN NaN NaN NaN NaN NaN NaN
l4 NaN NaN NaN NaN NaN NaN NaN NaN
简单使用list
:
df.loc['l1'] = l1
print (df)
A B C D E F G H
l1 1 2 3 4 5 6 7 8
l2 NaN NaN NaN NaN NaN NaN NaN NaN
l3 NaN NaN NaN NaN NaN NaN NaN NaN
l4 NaN NaN NaN NaN NaN NaN NaN NaN
或添加参数 index
,其值为 df.column
,因为 Series
的 index
必须与 DataFrame
的 columns
相同对齐方式:
df.loc['l1'] = pd.Series(l1, index = df.columns)
print (df)
A B C D E F G H
l1 1 2 3 4 5 6 7 8
l2 NaN NaN NaN NaN NaN NaN NaN NaN
l3 NaN NaN NaN NaN NaN NaN NaN NaN
l4 NaN NaN NaN NaN NaN NaN NaN NaN