停止 pandas 数据帧转换为矢量

Stop pandas dataframe from converting to vector

我有以下pandas dataframe

import pandas as pd
df = pd.DataFrame({'product name': ['laptop', 'printer', 'printer',], 'price': [1200, 150, 1200],  'price1': [1200, 150, 1200]})

现在我想打印一行

df.iloc[1,:]

结果如下

product name    printer
price               150
price1              150
Name: 1, dtype: object

这里可以看到,上面显示的是一个列格式。显示单行时是否可以保留原来dataframe的行格式?

实际上,df.iloc[1,:] 不是 pd.DataFrame,而是 pd.Series,您可以使用 type(df.iloc[1, :]) 进行检查。所以在这些情况下,行或列没有任何意义。

要将其保留为 pd.DataFrame,您可以 select 一系列长度为 1 的行:df.iloc[1:2, :]df.iloc[[1], :]