本来以为pandas通过loc然后指定一个index,就可以正确返回一行,没想到其实还暗藏玄机,我们来看看如何正确的获取pandas的一行:
首先我们创建一个pandas的DataFrame:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.arange(0,16).reshape(4,4))
df
我们按照正常的思维拿到DataFrame的第一行并打印一下输出结果类型:
df.loc[0]
print(type(df.loc[0]))
上面的输出是:
0 0
1 1
2 2
3 3
Name: 0, dtype: int64
<class 'pandas.core.series.Series'>
他返回的是一个Series,那我们如何才能获得一个DataFrame类型的一行数据呢,多加一个中括号就可以啦:
df.loc[[0]]
输出如下:
0 1 2 3
0 0 1 2 3