我刚开始与熊猫图书馆一起旅行。实际上我正试图探索Kaggle | Titanic Dataset。
因此,实际上有一个名为" Fare"。
的专栏我想知道谁有"票价" == 0
我可以使用,
print titanic_df[titanic_df["Fare"] == 0] #titanic_df is my DataFrame
我完全理解这个过程。
现在我看到有人说在Pandas DataFrame上使用2路比较并由
给出print titanic_df["Fare"][titanic_df["Fare"] == 0]
这也打印了相同的行数。我对代码的执行方式感到很困惑(第二个索引的含义是什么)。我可能会问一个非常愚蠢的问题,但在此之前我搜索了很多,没有任何成功。
请耐心等待。任何帮助表示赞赏。提前谢谢。
答案 0 :(得分:4)
这两种选择之间的区别在于第一种返回'pandas.core.frame.DataFrame',第二种返回'pandas.core.series.Series'
print type(titanic_train_df[titanic_train_df["Fare"] == 0])
<class 'pandas.core.frame.DataFrame'>
这是所选行的所有列,其中'Fare'== 0。
print type(titanic_train_df["Fare"][titanic_train_df["Fare"] == 0])
<class 'pandas.core.series.Series'>
这只是所选行的“票价”列,其中“票价”== 0。