Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 什么函数会更改“中的列类型?”;内联“;态度?_Python_Pandas - Fatal编程技术网

Python 什么函数会更改“中的列类型?”;内联“;态度?

Python 什么函数会更改“中的列类型?”;内联“;态度?,python,pandas,Python,Pandas,我知道以下命令有助于更改列类型: df['date'] = str(df['date']) df['A'] = pd.to_datetime(df['A']) df['A'] = df.A.astype(np.datetime64) 但是,您知道一种更好的方法来以内联方式更改列类型,使其与其他聚合命令(如groupby、dropna等)一起位于一行中。例如: df\ #.function to cast df.A to np.datetime64 \ .groupby('C') \ .

我知道以下命令有助于更改列类型:

df['date'] = str(df['date']) 

df['A'] = pd.to_datetime(df['A'])

df['A'] = df.A.astype(np.datetime64)
但是,您知道一种更好的方法来以内联方式更改列类型,使其与其他聚合命令(如groupby、dropna等)一起位于一行中。例如:

df\
#.function to cast df.A to np.datetime64 \ 
.groupby('C') \
.apply(lambda x: x.set_index('A').resample('1M').sum())
您可以使用:



第一个示例可能不属于这里,因为它不会更改数据类型。此外,您可能希望检查以避免临时设置索引和使用重采样。请接受第一个示例。你是对的,后一个例子与重采样有关,因为它创建了新的索引,我正试图在新的中删除它..我很惊讶你这么快就发现了风险。。我确实把方法改成了pd.Grouper,现在效果非常好。这正是我想要的!谢谢你,艾翰!
df.assign(A=pd.to_datetime(df['A']))
df = pd.DataFrame({'A': ['20150101', '20140702'], 'B': [1, 2]})
df
Out: 
          A  B
0  20150101  1
1  20140702  2

df.assign(A=pd.to_datetime(df['A']))
Out: 
           A  B
0 2015-01-01  1
1 2014-07-02  2