gpt4 book ai didi

r - 按文件扩展名和时间对文件的 data.frame 进行分组

转载 作者:行者123 更新时间:2023-12-04 10:42:49 25 4
gpt4 key购买 nike

我有一个数据,其中不同的文件在不同的时间被访问。每个文件都有其特定的扩展名。根据这些扩展名,我希望拥有这些文件的集群,例如(.pdf、.pptx、.srt),这些扩展名应该放在名为“WORK”的集群中。此外,扩展名为(.mp3、mp4、.jpg)的文件应保存在“娱乐”集群中,其余文件应放置在“其他”命名集群中。我必须将时间分为两类“白天”(早上 6 点到下午 6 点)和晚上(下午 6 点到早上 6 点)。最后我必须制作一个图表(直方图)来说明哪个集群有更多的文件以及一天中有多少文件和晚上。我不知道如何开始它

Name                                                               Time
$R1XFFF3.JPG 11/04/2017 20:39:17
[Fall 2016] Duty Roaster, Final Term (1).xlsx 21/03/2017 01:33:48
04_OOP_Base.sln 16/03/2017 22:26:15
1 - 2 - What is Machine Learning- (7 min).pdf 02/04/2017 02:03:18
1 - 3 - Supervised Learning (12 min).jpg 02/04/2017 02:03:20
1 - 4 - Unsupervised Learning (14 min).mkv 02/04/2017 02:03:21
1.jpg 08/04/2017 19:02:55
1.png 17/03/2017 11:17:19
15-oop.ppt 16/03/2017 22:28:58
2 - 1 - Model Representation (8 min).srt 02/04/2017 02:03:21
2 - 2 - Cost Function (8 min).srt 02/04/2017 02:03:22
2 - 3 - Cost Function - Intuition I (11 min).srt 02/04/2017 02:03:23
2 - 4 - Cost Function - Intuition II (9 min).srt 02/04/2017 02:03:23
2 - 5 - Gradient Descent (11 min).ppt 02/04/2017 02:03:39

最佳答案

您可以使用 lubridate() 中的类别和 hour 的正则表达式来检查时间条件

library(lubridate)
df$cluster = ifelse(grepl("(\\.pdf|\\.pptx|\\.srt)$", df$Name, perl = TRUE), "WORK", "Other")
df$cluster = ifelse(grepl("(\\.mp3|\\.mp4|\\.jpg)$", df$Name, perl = TRUE), "Entertainment", df$cluster)

df$Time = as.POSIXct(strptime(df$Time, "%m/%d/%Y %H:%M:%S"))

df$Time2 = ifelse(hour(df$Time) >=6 & hour(df$Time) <= 18, "Day", "Night")

对于绘图,您可以将其分成两个独立的图:一个用于夜间,一个用于白天。

barplot(table(df[df$Time2 == "Night", "cluster"]))

如果我们在绘制它们之前运行它,我们可以将它们并排放置

par(mfrow = c(1, 2))

在同一个地 block 上

library(ggplot2)
p = ggplot(df, aes(cluster, fill = Time2))
p + geom_bar(position = "dodge")

关于r - 按文件扩展名和时间对文件的 data.frame 进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43901232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com