假设我想使用以下内容将一系列日期字符串转换为dataframe.loc[:, 'DATE']
:
>>> pd.to_datetime(dataframe.loc[:,'DATE'], +)
现在,我认为dataframe.loc[:,'DATE'] += pd.to_datetime()
是多余的。我可以在python中调用对象上的函数并同时将返回值分配给同一个对象吗?
看起来像:
+
或
{{1}}
其中{{1}}(或其他)将函数的返回值分配给第一个参数
这个问题可能是由于我对编程语言的编写/功能缺乏了解,所以请保持温和。
答案 0 :(得分:2)
没有这样的事情。但你可以通过以下方式实现同样的目标:
name = 'DATE'
dataframe[name] = pd.to_datetime(dataframe[name])
无需.loc
某些方法支持inplace=True
关键字参数。
例如,对数据框进行排序会为您提供新的数据:
>>> df = pd.DataFrame({'DATE': [10, 7, 1, 2, 3]})
>>> df.sort_values()
>>> df.sort_values('DATE')
DATE
2 1
3 2
4 3
1 7
0 10
原件保持不变:
>>> df
DATE
0 10
1 7
2 1
3 2
4 3
设置inplace=True
,修改原始df
:
>>> df.sort_values('DATE', inplace=True)
>>> df
DATE
2 1
3 2
4 3
1 7
0 10
答案 1 :(得分:1)
最近的Pandas到达这个地方就是" inplace"存在大量DataFrame函数的命令。
例如,一个就地日期时间操作碰巧隐藏在新的set_index功能中。
df.set_index(df['Date'], inplace=True)