- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个带有日期时间列的日期框,格式为 yyyy-mm-dd。
我想将其设为整数格式 yyyymmdd 。我一直在使用这个
x=dates.apply(dt.datetime.strftime('%Y%m%d')).astype(int)
TypeError: descriptor 'strftime' requires a 'datetime.date' object but received a 'str'
这不起作用,因为我试图传递一个数组。我知道如果我只传递元素它会转换,但我如何做它更 pythonic?我确实尝试过使用 lambda,但这也没有用。
最佳答案
如果你的列是一个字符串,你需要先使用`pd.to_datetime',
df['Date'] = pd.to_datetime(df['Date'])
然后,将 .dt
日期时间访问器与 strftime
一起使用:
df = pd.DataFrame({'Date':pd.date_range('2017-01-01', periods = 60, freq='D')})
df.Date.dt.strftime('%Y%m%d').astype(int)
或者使用 lambda 函数:
df.Date.apply(lambda x: x.strftime('%Y%m%d')).astype(int)
输出:
0 20170101
1 20170102
2 20170103
3 20170104
4 20170105
5 20170106
6 20170107
7 20170108
8 20170109
9 20170110
10 20170111
11 20170112
12 20170113
13 20170114
14 20170115
15 20170116
16 20170117
17 20170118
18 20170119
19 20170120
20 20170121
21 20170122
22 20170123
23 20170124
24 20170125
25 20170126
26 20170127
27 20170128
28 20170129
29 20170130
30 20170131
31 20170201
32 20170202
33 20170203
34 20170204
35 20170205
36 20170206
37 20170207
38 20170208
39 20170209
40 20170210
41 20170211
42 20170212
43 20170213
44 20170214
45 20170215
46 20170216
47 20170217
48 20170218
49 20170219
50 20170220
51 20170221
52 20170222
53 20170223
54 20170224
55 20170225
56 20170226
57 20170227
58 20170228
59 20170301
Name: Date, dtype: int32
关于python - 将 Pandas 日期时间列 yyyy-mm-dd 转换为 YYYYMMDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46834732/
您好,我是 Oracle 的新手,需要了解如何操作。 考虑我有一个文本文件,文件中的值为 '20180924''20180923' 我从 Pro*c 读取这些值,然后添加 29 天,因此该值现在从 2
这是查询: 选择 FACDTE.QTR ,FACDTE.WK ,FACDTE."DATE" ,FACDTE.DIV ,FACDTE.DST ,FACDTE.FAC ,FACDTE.DAYS ,COAL
在 R 中,我可以使用以下方法将日期解析为 Lubridate 格式: d format(d, "%Y%m%d") [1] "20130215" 关于c# - 在 R 中,如何以 yyyymmdd
我正在寻找一个正则表达式字符串,该字符串将验证格式为 yyyyMMdd(无分隔符)并适用于闰年的日期。到目前为止,我发现的最接近的东西只能验证自 2000 年以来的日期。 import java.ut
我有一个包含这种格式的日期的字符串 my $time = 'Fri Jan 8 14:24:27 2016'; 我想将其转换为 YYYYMMDD。我尝试了几个选项,例如: use POSIX qw(
我的索引有一个日期字段,格式为2020-01-04T05:00:06.870000Z。在ES查询响应中,我需要yyyyMMdd形式的日期,所以20200104。我尝试使用脚本查询并分别提取了日期,月份
我想像这样将控制台保存到.txt中 每次运行应用程序时。 以下是我根据当前时间保存控制台的方法: SimpleDateFormat dtf = new SimpleDateFormat("yyMMdd
如何根据系统日期将输出文本文件命名为 YYYYMMDD? sqlcmd -S DataBBB -i c:\scripts\followup.sql -o %DATE:~4,2%_%DATE:~
在 Javascript 中,我有如下所示的日期字符串: var dateStr = "Wed Mar 25 2015 05:30:00 GMT+0530 (India Standard Time)"
这个问题在这里已经有了答案: Regex date format validation on Java (12 个答案) 关闭 9 年前。 我正在从一个包含格式为 YYYYMMDD 的行的文件中读取
时间格式有点问题我想得到 YYYY-MM-DD 形式的输出,给定日期时间数据输入为 19901209,即 1990-12-09 . 我还想知道是否有任何方法可以获取其他格式的数据,例如 DD-MM-Y
我有一堆这种形式的日期字符串:- 30th November 2009 31st March 2010 30th September 2010 我希望他们是这样的:- YYYYMMDD 目前我正在这样
Python 和 Matlab 经常使用整数日期表示,如下所示: 733828.0733829.0733832.0733833.0733834.0733835.0733836.0733839.0733
我有一个要求,要求以 YYYYMMDD 格式传递日期。基于 swagger 文档,date filed 在 string 类型下定义。但是,它遵循 RFC 3339,第 5.6 节,文档(例如 201
我想要一个简单的 YYYYMMDD 格式,以便可以在有角度的前端显示它。 在这里,在对日期对象进行操作之后,我想将其分配回 TIMESTAMP结果对象中的列。 TIMESTAMP在数据库 (postg
我有一个包含代表日期的 8 位数字的字符串。例如: 20120515 我想将其与以这种方式创建的今天的日期进行比较: var currentDate = new Date(); 如何将“8 位日期字符
我正在尝试编写一个配置单元查询以从今天的分区中获取数据。这是我的查询: select * from testtable where data_dt ='date +%Y%m%d'; 我需要帮助将日期转
以下是我如何输入和使用日期作为宏变量: %let x = %SYSEVALF('01jan2012'd); %put &x; *see the date as sas sees it; %put %S
我知道我可以使用 SimpleDateFormat 获取 yyyyMMdd 格式的日期字符串,但它会带来一些成本,当我在我的机器上测试时,需要 2 秒进行 1000 万次操作 因为我可以缓存这个值并在
将用户输入日期格式从dd/mm/yyyy转换为yyyymmdd以方便日期检查。该代码将日期写入 .TXT 文件,但当我想要以 yyyymmdd 格式写入时,则以 dd/mm/yyyy 格式写入。到目前
我是一名优秀的程序员,十分优秀!