我的数据框中有以下列,dtype
为 int
:
Time
201311040040
201311040050
201311110000
201311110010
由此,我想创建一个新列,其中仅包含前 8 个数字,表示为 int
,例如。我想要:
Time Day
201311040040 20131104
201311040050 20131104
201311110000 20131111
201311110010 20131111
为此,我使用:
df["Day"] = (df.Time.astype(str)[0:8]).astype(int)
但是,这给了我:
Time Day
201311040040 2.013111e+11
201311040050 2.013111e+11
201311110000 NaN
201311110010 NaN
首先,它如何返回 NaN
值?正确的做法是什么?谢谢!
最佳答案
In [175]: df['Day'] = df['Time'] // 10**4
In [176]: df
Out[176]:
Time Day
0 201311040040 20131104
1 201311040050 20131104
2 201311110000 20131111
3 201311110010 20131111
关于Python/Pandas - "subtext"整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43805611/