我最近刚开始研究python数据科学,并注意到我可以通过两种方式调用数据集的列。我想知道使用一种方法相对于另一种方法是否有优势,或者可以互换使用?
import seaborn
iris = seaborn.load_dataset('iris')
print(iris.species)
print(iris['species'])
两个打印语句在Jupyter中都提供相同的输出
答案 0 :(得分:1)
没有区别。 iris
是Pandas数据框,这是访问数据框中列的两种不同方式。
尝试一下:
iris['species'] is iris.species
# True
您可以使用任何一种方法,但是我发现索引方法(iris['species']
)更具通用性,例如您可以使用它来访问名称中包含空格的列,可以使用它来创建新列,并且绝不会意外检索到数据框方法或属性(例如iris.shape
)而不是列。
另请参阅以下问题的答案:
答案 1 :(得分:1)
访问字典的两种方法都是等效的。
通过UpdateData(SomeHighLevelType)
键(例如iris
)访问'species'
字典的主要优点是指定的字典键可以有空格。
例如,您可以使用iris['species']
键访问iris
字典,例如:'plant color'
。但是,您无法通过iris['plant color']
访问iris
字典。