【发布时间】:2018-12-22 09:20:45
【问题描述】:
例如,我正在研究这样一个例子:
train['Datetime'] = pd.to_datetime(train.Datetime,format='%d-%m-%Y %H:%M')
如果我运行 train['Datetime'].head() 和 train.Datetime.head(),结果是相同的。那么为什么要使用其中一个呢?或者为什么同时使用两者?
【问题讨论】:
-
使用点表示法是一种快捷方式,不如使用 [' '] 表示法可靠。如果列标题带有空格或特殊字符,点表示法将不起作用。 IE 如果你的数据框有一个“日期时间”列,那么你不能使用
df.Date Time.head(),你必须使用df['Date Time'].head()。 -
感谢您的回复。出于某种原因,我很难用谷歌搜索这个。
-
但是,使用点表示法有一些优点,一个是在一些开发环境中,例如 Jupyter notebook。使用点符号将代码助手如何弹出可以在数据框列上调用的所有可用方法。至少在 Jupyter 笔记本中,使用 [' '] 表示法时这是不可用的。如果您正在使用带有点符号框架的编程语言,那么第二个可能是可读性。
-
我正在从 jupyter notebook 看这个,所以也许这就是他们使用点符号的原因。通过“代码助手”,我猜这是我必须在 jupyter 上安装的东西?
-
另外,如果你有一行覆盖了任何内置方法/属性等,例如
index、values...你将不得不使用字典符号
标签: pandas data-science data-analysis