Como listar arquivos por data em r (com exemplo)


Você pode usar a seguinte sintaxe básica para listar arquivos no diretório de trabalho atual em R por data:

 #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 ")]

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: como listar arquivos por data em R

Suponha que eu queira listar todos os arquivos CSV no diretório de trabalho atual em R por data.

Posso usar a seguinte sintaxe para primeiro extrair todos os arquivos CSV (com informações do arquivo) do diretório de trabalho atual:

 #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

Posso então usar a função order() para ordenar os arquivos por mtime , que representa a data e hora em que os arquivos foram modificados pela última vez:

 #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

Observe que você pode usar ctime se quiser classificar os arquivos por data de criação ou atime para classificar os arquivos por data de acesso .

Finalmente, podemos subconfigurar o quadro de dados para exibir apenas os nomes dos arquivos e a data e hora em que foram modificados pela última vez:

 #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

Se desejar, você também pode exibir apenas nomes de arquivos por data:

 #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"  

Os doze nomes de arquivos CSV são ordenados por data.

Relacionado: Como usar a função list.files() em R (4 exemplos)

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como ler arquivos Zip em R
Como importar arquivos CSV para R
Como importar arquivos Excel para R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *