[問題] csv如何轉置(transform)?

看板R_Language作者 (5245566)時間10年前 (2015/11/16 22:56), 10年前編輯推噓1(1011)
留言12則, 3人參與, 最新討論串1/1
文章分類提示: - 問題: 當你想要問問題時,請使用這個類別 [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手(沒寫過程式,R 是我的第一次) [問題敘述]: 想將csv整個轉置,csv有點大(約1000000列 X 50欄),想轉成(50列 X 1000000欄) 所以無法用EXCEL轉置,目前是以data.frame的方式讀取csv,轉置後想再輸出 簡例 NAME SUBJECT SCORE tony chinese 20 tony english 30 sam chinese 30 sam english 20 想轉成 name tony tony sam sam subject chinese english chinese english score 20 30 30 20 [程式範例]: 目前只有想到用matrix,但是結果跟我想的差很多 mydata = matrix(read.csv("mydata.csv")) ta <- t(mydata) write.csv(ta,"newdata.csv") [環境敘述]: R3.2.2 win7 32bit [關鍵字]: transform -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.195.74.150 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1447685804.A.408.html

11/16 22:59, , 1F
11/16 22:59, 1F

11/16 23:00, , 2F
型態會跑掉喔!請三思
11/16 23:00, 2F

11/16 23:06, , 3F
輸出可以設定不要quote應該就一樣了
11/16 23:06, 3F

11/16 23:07, , 4F
可以在細說一點嗎?? quote不知道是什麼東西
11/16 23:07, 4F

11/16 23:08, , 5F
write系列函數都可以設定quote = FALSE
11/16 23:08, 5F

11/16 23:09, , 6F
可以避免字串多""
11/16 23:09, 6F

11/16 23:09, , 7F
你轉成矩陣之後,會全部變成character
11/16 23:09, 7F

11/16 23:09, , 8F
設定quote = FALSE輸出在讀入時就還是數字不是chr
11/16 23:09, 8F

11/16 23:10, , 9F
我第一個箭頭給的是之前測試讀寫的文章
11/16 23:10, 9F

11/16 23:17, , 10F
有字串的也可以嗎?? 還是只能處理數字!?
11/16 23:17, 10F

11/16 23:17, , 11F
可以
11/16 23:17, 11F

11/16 23:18, , 12F
我那篇只處理數字而已 字串不要quote寫出應該可以
11/16 23:18, 12F
剛剛試了以下的程式碼就可以達到我要的情形了 感謝大家 只是不知道大一點的資料適不適用 明天再上來告訴大家 mydata = read.csv("mydata.csv") ta <- t(mydata) write.csv(ta,"newdata.csv") 很大的資料也適用喔~~ 輸出csv假如不想要有雙引號記得加quote=FALSE ※ 編輯: tony255034 (123.195.74.150), 11/18/2015 21:34:03
文章代碼(AID): #1MIUwiG8 (R_Language)
文章代碼(AID): #1MIUwiG8 (R_Language)