gpt4 book ai didi

r - 通过标识符和 R 中的打开/处理子集组织 csv

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

我有以下 CSV 文件:

files = c("C:\\Users\\sh\\/2018/April 17 2018/user_22226.csv", 
"C:\\Users\\sh\\/2018/April 17 2018/user_22227.csv",
"C:\\Users\\sh\\/2018/April 17 2018/user_22228.csv",
"C:\\Users\\sh\\/2018/April 17 2018/user_22232.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_21785.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_21815.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_21821.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_21822.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_22226.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_22227.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_22228.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_22230.csv",
"C:\\Users\\sh\\/2018/April 2 2018/user_22232.csv",
"C:\\Users\\sh\\/2018/April 23 2018/user_22921.csv",
"C:\\Users\\sh\\/2018/April 9 2018/user_22226.csv",
"C:\\Users\\sh\\/2018/April 9 2018/user_22227.csv",
"C:\\Users\\sh\\/2018/April 9 2018/user_22228.csv",
"C:\\Users\\sh\\/2018/April 9 2018/user_22230.csv",
"C:\\Users\\sh\\/2018/April 9 2018/user_22232.csv",
"C:\\Users\\sh\\/2018/August 13 2018/user_29607.csv")

我可以通过结束标识符组织它们:
files_sorted = files[order(gsub('.*_(\\d{5})[.].*','\\1',files))]

给我:
 [1] "C:\\Users\\sh\\/2018/April 2 2018/user_21785.csv"  
[2] "C:\\Users\\sh\\/2018/April 2 2018/user_21815.csv"
[3] "C:\\Users\\sh\\/2018/April 2 2018/user_21821.csv"
[4] "C:\\Users\\sh\\/2018/April 2 2018/user_21822.csv"
[5] "C:\\Users\\sh\\/2018/April 17 2018/user_22226.csv"
[6] "C:\\Users\\sh\\/2018/April 2 2018/user_22226.csv"
[7] "C:\\Users\\sh\\/2018/April 9 2018/user_22226.csv"
[8] "C:\\Users\\sh\\/2018/April 17 2018/user_22227.csv"
[9] "C:\\Users\\sh\\/2018/April 2 2018/user_22227.csv"
[10] "C:\\Users\\sh\\/2018/April 9 2018/user_22227.csv"
[11] "C:\\Users\\sh\\/2018/April 17 2018/user_22228.csv"
[12] "C:\\Users\\sh\\/2018/April 2 2018/user_22228.csv"
[13] "C:\\Users\\sh\\/2018/April 9 2018/user_22228.csv"
[14] "C:\\Users\\sh\\/2018/April 2 2018/user_22230.csv"
[15] "C:\\Users\\sh\\/2018/April 9 2018/user_22230.csv"
[16] "C:\\Users\\sh\\/2018/April 17 2018/user_22232.csv"
[17] "C:\\Users\\sh\\/2018/April 2 2018/user_22232.csv"
[18] "C:\\Users\\sh\\/2018/April 9 2018/user_22232.csv"
[19] "C:\\Users\\sh\\/2018/April 23 2018/user_22921.csv"
[20] "C:\\Users\\sh\\/2018/August 13 2018/user_29607.csv"

我的目标是现在处理具有相同标识 ID 的 CSV 文件,例如那些以“22226.csv”结尾的文件

我的理想输出是具有单个 DF/表或具有相同 ID 的 CSV 文件的列表。然后我将在我编写的用于预处理数据的函数中运行该单个 DF/list。

我曾尝试使用 group_by() 和 unique() 但返回了 NA。

最佳答案

我们可以使用 split创建一个 list的文件。分组基于通过删除字符直到 _ 派生的子字符串。

lst1 <- split(files, sub('.*_', '', files))

使用 [[ 提取元素
lst1[["22232.csv"]]
#[1] "C:\\Users\\sh\\/2018/April 17 2018/user_22232.csv"
#[2] "C:\\Users\\sh\\/2018/April 2 2018/user_22232.csv"
#[3] "C:\\Users\\sh\\/2018/April 9 2018/user_22232.csv"

关于r - 通过标识符和 R 中的打开/处理子集组织 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61128210/

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