要选择 pandas 数据框中的单个列,我应该使用
df.loc[3:3, :]
或
df.loc[3, :]
它们并不完全相同,因为第一个在 Jupyter 中显示表格,而第二个则不然。
最佳答案
df.loc[3:3, :]
表示,以 Dataframe 形式打印索引为 3 的行。
df.loc[3, :]
表示,以序列形式打印索引为 3 a 的行。
让我们以一个DataFrame为例:
df = pd.DataFrame({'time':[1,5,10,12,15,18],'shift':['A','B','C','D','E','F']})
这就是 DataFrame 的样子:
shift time
0 A 1
1 B 5
2 C 10
3 D 12
4 E 15
5 F 18
现在让我们一条一条地执行你的语句:
##1st code:
df.loc[3:3, :]
shift time
3 D 12
##2nd code:
df.loc[3, :]
shift D
time 12
Name: 3, dtype: object
为什么因为我们在这里的第一个代码 df.loc[3:3, :]
中指定了一个切片范围,尽管我们给出了 3:3
的范围将只打印具有第三个索引的行。在第二个代码中,df.loc[3, :]
没有范围,因此它将以系列形式打印。
关于python - pandas 数据框中 df.loc 第一个参数的范围和单个值之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67147760/