Re: [問題] CSV資料切割
※ 引述《locka (locka)》之銘言:
: library(tidyverse)
: library(readr)
: # 產生測試資料
: demo <- tibble(variable=1:16,
: id1=rnorm(16),
: id2=rnorm(16),
: id3=rnorm(16),
: id4=rnorm(16))
: write_csv(demo, "demo.csv")
: # 使用read_csv_chunked() 每4row切割並輸出成一個新的檔案
: callback_f <- function(x, pos) write_csv(x, paste0("chunk_",pos%/%4,".csv"))
: read_csv_chunked("demo.csv", DataFrameCallback$new(callback_f), chunk_size=4
)
: 結果如下:
: 原資料
: https://i.imgur.com/y3GmbSh.jpg
: 輸出4個檔案
: https://i.imgur.com/5b2pzEi.jpg
-------------------------------------------------------------------
謝謝各位的解答,我收益良多
如今我有一個衍伸的問題
如果我要將這4個分開的矩陣做同樣的運算並且將最終運算結果整理到同一個檔案中的話
除了一筆一筆運算外,有沒有比較快的方式?
我使用的指令如下
承續locka的指令
library(igraph)
#將4個輸出檔案匯入
data1 <- read.csv("chunk_0.csv", header=T, sep=",",row.names = 1)
data2 <- read.csv("chunk_1.csv", header=T, sep=",",row.names = 1)
data3 <- read.csv("chunk_2.csv", header=T, sep=",",row.names = 1)
data4 <- read.csv("chunk_3.csv", header=T, sep=",",row.names = 1)
#自定義一個運算函數
test=function(X){
A=graph.adjacency(t(X), mode="directed",weighted =T)
result=topov=cbind(result1=graph.strength(A, mode = "in"),
result2=graph.strength(A, mode = "out"))
return(list(result=result))
}
#將4個匯入檔案分別計算
output1 = test(data1)
output2 = test(data2)
output3 = test(data3)
output4 = test(data4)
#將4個計算結果合併並輸出
result1_all = as.data.frame(cbind(output1$result[,1],output2$result[,1],output
3$result[,1],output4$result[,1]))
result2_all = as.data.frame(cbind(output$result[,2],output2$result[,2],output3
$result[,2],output4$result[,2]))
write_csv(result1_all,"result1_all")
write_csv(result2_all,"result2_all")
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.44.152 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1677119056.A.E72.html
※ 編輯: haitairoutzu (140.116.44.152 臺灣), 02/23/2023 10:25:19
※ 編輯: haitairoutzu (140.116.44.152 臺灣), 02/23/2023 10:26:19
→
02/23 11:02,
1年前
, 1F
02/23 11:02, 1F
→
02/23 14:03,
1年前
, 2F
02/23 14:03, 2F
→
02/23 14:03,
1年前
, 3F
02/23 14:03, 3F
→
02/23 14:03,
1年前
, 4F
02/23 14:03, 4F
→
02/23 14:03,
1年前
, 5F
02/23 14:03, 5F
討論串 (同標題文章)
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章