Як створити список файлів за датою в r (з прикладом)


Ви можете використовувати наступний базовий синтаксис для переліку файлів у поточному робочому каталозі в R за датою:

 #extract all CSV files in working directory
file_info = file. info ( list.files (pattern=" *.csv "))

#sort files based on mtime (date and time modification)
file_info = file_info[ with (file_info, order (as. POSIXct (mtime))), ]

#view only file names with modification date and time
file_info[c(" mtime ")]

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як перерахувати файли за датою в R

Припустімо, я хочу перерахувати всі файли CSV у поточному робочому каталозі в R за датою.

Я можу використати такий синтаксис, щоб спочатку видобути всі файли CSV (з інформацією про файл) із поточного робочого каталогу:

 #extract all CSV files in working directory
file_info = file. info ( list.files (pattern=" *.csv "))

#view all CSV files
file_info

                        size isdir mode mtime ctime atime exe
basketball_data.csv 55 FALSE 666 2023-01-06 11:07:43 2022-07-12 09:07:26 2023-04-18 09:42:19 no
df1.csv 126 FALSE 666 2022-04-21 10:48:24 2022-04-21 10:48:24 2023-04-18 09:42:19 no
df2.csv 126 FALSE 666 2022-04-21 10:48:30 2022-04-21 10:48:29 2023-04-18 09:42:19 no
df3.csv 126 FALSE 666 2022-04-21 10:48:34 2022-04-21 10:48:34 2023-04-18 09:42:19 no
my_data.csv 53 FALSE 666 2022-09-09 09:02:21 2022-04-22 09:00:13 2023-04-18 09:42:19 no
my_list.csv 90 FALSE 666 2022-04-21 09:40:01 2022-04-21 09:39:59 2023-04-18 09:42:19 no
my_test.csv 146 FALSE 666 2022-04-21 09:42:25 2022-04-21 09:42:25 2023-04-18 09:42:19 no
player_stats.csv 137 FALSE 666 2023-04-11 09:07:20 2023-04-11 09:07:20 2023-04-18 09:42:19 no
players_data.csv 50 FALSE 666 2023-01-06 09:44:12 2023-01-06 09:44:12 2023-04-18 09:42:19 no
team_info.csv 131 FALSE 666 2023-04-11 09:07:21 2023-04-11 09:07:21 2023-04-18 09:42:19 no
test.csv 18059168 FALSE 666 2022-09-07 09:07:34 2020-02-01 13:44:03 2023-04-18 09:42:19 no
uneven_data.csv 43 FALSE 666 2023-01-06 14:02:17 2023-01-06 14:00:27 2023-04-18 09:42:19 no

Потім я можу використати функцію order() , щоб упорядкувати файли за mtime , що представляє дату й час останньої зміни файлів:

 #sort files based on mtime (date and time modification)
file_info = file_info[ with (file_info, order (as. POSIXct (mtime))), ]

#view sorted files
file_info

                        size isdir mode mtime ctime atime exe
my_list.csv 90 FALSE 666 2022-04-21 09:40:01 2022-04-21 09:39:59 2023-04-18 09:42:19 no
my_test.csv 146 FALSE 666 2022-04-21 09:42:25 2022-04-21 09:42:25 2023-04-18 09:42:19 no
df1.csv 126 FALSE 666 2022-04-21 10:48:24 2022-04-21 10:48:24 2023-04-18 09:42:19 no
df2.csv 126 FALSE 666 2022-04-21 10:48:30 2022-04-21 10:48:29 2023-04-18 09:42:19 no
df3.csv 126 FALSE 666 2022-04-21 10:48:34 2022-04-21 10:48:34 2023-04-18 09:42:19 no
test.csv 18059168 FALSE 666 2022-09-07 09:07:34 2020-02-01 13:44:03 2023-04-18 09:42:19 no
my_data.csv 53 FALSE 666 2022-09-09 09:02:21 2022-04-22 09:00:13 2023-04-18 09:42:19 no
players_data.csv 50 FALSE 666 2023-01-06 09:44:12 2023-01-06 09:44:12 2023-04-18 09:42:19 no
basketball_data.csv 55 FALSE 666 2023-01-06 11:07:43 2022-07-12 09:07:26 2023-04-18 09:42:19 no
uneven_data.csv 43 FALSE 666 2023-01-06 14:02:17 2023-01-06 14:00:27 2023-04-18 09:42:19 no
player_stats.csv 137 FALSE 666 2023-04-11 09:07:20 2023-04-11 09:07:20 2023-04-18 09:42:19 no
team_info.csv 131 FALSE 666 2023-04-11 09:07:21 2023-04-11 09:07:21 2023-04-18 09:42:19 no

Зауважте, що натомість ви можете використовувати ctime, якщо хочете сортувати файли за датою створення , або atime , щоб сортувати файли за датою доступу .

Нарешті, ми можемо підмножити кадр даних, щоб відображати лише імена файлів, а також дату й час їх останньої зміни:

 #view only file names with modification date and time
file_info[c(" mtime ")]

                                  mtime
my_list.csv 2022-04-21 09:40:01
my_test.csv 2022-04-21 09:42:25
df1.csv 2022-04-21 10:48:24
df2.csv 2022-04-21 10:48:30
df3.csv 2022-04-21 10:48:34
test.csv 2022-09-07 09:07:34
my_data.csv 2022-09-09 09:02:21
players_data.csv 2023-01-06 09:44:12
basketball_data.csv 2023-01-06 11:07:43
uneven_data.csv 2023-01-06 14:02:17
player_stats.csv 2023-04-11 09:07:20
team_info.csv 2023-04-11 09:07:21

Якщо ви хочете, ви також можете відображати лише назви файлів за датою:

 #view only file names
rownames(file_info)

 [1] "my_list.csv" "my_test.csv" "df1.csv" "df2.csv" "df3.csv"            
 [6] "test.csv" "my_data.csv" "players_data.csv" "basketball_data.csv" "uneven_data.csv"    
[11] "player_stats.csv" "team_info.csv"  

Дванадцять назв файлів CSV упорядковано за датою.

Пов’язане: як використовувати функцію list.files() у R (4 приклади)

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як читати файли Zip у R
Як імпортувати файли CSV у R
Як імпортувати файли Excel у R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *