Google sheets 从非常规日期和时间字符串获取平均值

Google sheets 从非常规日期和时间字符串获取平均值,google-sheets,Google Sheets,我有一个Alexa程序,当我说晚安的日期/时间会在谷歌表中被跟踪,这样我就可以看到我什么时候真正上床睡觉了。是的,现在一切都可以被跟踪和测量 但这些条目都是非常奇怪和无用的字符串,而不是日期和时间: 样本数据: January 23, 2021 at 11:29PM January 25, 2021 at 12:03AM January 25, 2021 at 11:27PM January 26, 2021 at 11:17PM Alexa只是将这些非常规的日期/时间字符串转储到A1-A??

我有一个Alexa程序,当我说晚安的日期/时间会在谷歌表中被跟踪,这样我就可以看到我什么时候真正上床睡觉了。是的,现在一切都可以被跟踪和测量

但这些条目都是非常奇怪和无用的字符串,而不是日期和时间:

样本数据:

January 23, 2021 at 11:29PM
January 25, 2021 at 12:03AM
January 25, 2021 at 11:27PM
January 26, 2021 at 11:17PM
Alexa只是将这些非常规的日期/时间字符串转储到A1-A???在第一个选项卡上

我的目标是显示我每个月的平均就寝时间。通常我都能找到答案,但我很难将它们转换成月份/年份和时间,更不用说找到平均值的方法了

转向那些比我更疯狂的人

一如既往地感谢您。

您可以尝试以下方法(在C1中,假设您的数据从A2:A开始):

更新:

= QUERY(ARRAYFORMULA(
            IF(LEN(A2:A), {
                MONTH(REGEXEXTRACT(A2:A, "\D+") & 1),
                REGEXEXTRACT(A2:A, "\D+"),
                IF(TIMEVALUE(REGEXEXTRACT(A2:A, "\d+:\d+.*")) > 0.5,
                    TIMEVALUE(REGEXEXTRACT(A2:A, "\d+:\d+.*")),
                    TIMEVALUE(REGEXEXTRACT(A2:A, "\d+:\d+.*")) + 1)
            }, "")),
        "Select Col1,Col2 ,avg(Col3) where Col1 is not null 
        group by Col1, Col2 Order By Col1 asc label Col1 '#', Col2 'Month', avg(Col3)
        'Average bedtime'
        ")


电子表格演示:

您说过您的原始数据字符串运行A1:A。在这种情况下,您可以将以下内容放在单元格B1中(其中列B和列C均为空):

=过滤器(拆分(A:A,“at”,0,1),A:A“”)

这将为列a中的每个字符串在列B中创建一个实际日期,在列C中创建一个实时。从那里,您可以轻松地执行其他功能。例如,假设在B1中有上述公式,则可以在E1中放置以下内容:


=ArrayFormula(查询(筛选({日期(年)(B:B),月(B:B),1),如果(C:C数字>更多格式>自定义数字格式>mmm yyyy)和列F(格式>数字>更多格式>自定义数字格式>h:mm am/pm).

Alexa正在将日期直接转储到谷歌表单上,还是你?当你点击一个条目时,公式栏上会显示什么?你好,Nabnub。看看我的答案。这与更简单的公式相同。这是真的。我删除了我的答案。这很好,成功了。显然,我的平均睡觉时间比我想象的要晚得多。很高兴知道!纳布努布,谢谢你对这个问题的实质性回复!!如果这个回复对你有用,你可以将它标记为接受并投票,它可以帮助其他人从你的问题和答案中找到灵感。