R語言讀取csv文件出錯的解決方案
今天在用R語言讀取.csv文件的時候報錯
Error in make.names(col.names, unique = TRUE) : invalid multibyte string 5
上網(wǎng)查了很久才知道原來是格式的問題(保存文件格式的編碼不正確)
重新保存正確的格式就沒有問題了~
補充:R語言讀取csv文件,第一列列名出現(xiàn)亂碼的解決方法
在利用R語言讀取csv文件時,第一列列名總是出現(xiàn)亂碼,代碼如下:
setwd(“E:\2.Model\4. Simulation”) #設定文件路徑 All.Soils = read.table(“1. Soil.csv”,sep=",",header=T) #讀取文件 xx<-colnames(All.Soils)#獲取文件中的列名 xx
結(jié)果如下:
[1] “锘緾lass” “FID” “BD1” “BD2” “BD3” [6] “BD4” “BD5” “airdry1” “airdry2” “airdry3” [11] “airdry4” “airdry5” “l(fā)l15_1” “l(fā)l15_2” “l(fā)l15_3” [16] “l(fā)l15_4” “l(fā)l15_5” “CLL1” “CLL2” “CLL3” [21] “CLL4” “CLL5” “dul1” “dul2” “dul3” [26] “dul4” “dul5” “sat1” “sat2” “sat3” [31] “sat4” “sat5”
后來找到了原因,是因為將excel文件另存為csv文件造成的。
應該在excl中按照如下操作完成:
第一步:
點擊“file”,即“文件”;
第二步:
點擊“export”,即“導出”;
第三步:
點擊“Change File Type”,即“改變文件格式”,選擇"CSV",進行導出即可;
之后再次運行代碼,亂碼不見了,結(jié)果如下:
[1] “Class” “FID” “BD1” “BD2” “BD3” “BD4” [7] “BD5” “airdry1” “airdry2” “airdry3” “airdry4” “airdry5” [13] “l(fā)l15_1” “l(fā)l15_2” “l(fā)l15_3” “l(fā)l15_4” “l(fā)l15_5” “CLL1” [19] “CLL2” “CLL3” “CLL4” “CLL5” “dul1” “dul2” [25] “dul3” “dul4” “dul5” “sat1” “sat2” “sat3” [31] “sat4” “sat5”
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關文章
R語言數(shù)據(jù)結(jié)構(gòu)之矩陣、數(shù)組與數(shù)據(jù)框詳解
進行數(shù)據(jù)分析的第一步是先拿到數(shù)據(jù),下面這篇文章主要給大家介紹了關于R語言數(shù)據(jù)結(jié)構(gòu)之矩陣、數(shù)組與數(shù)據(jù)框的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-07-07R語言-如何切換科學計數(shù)法和更換小數(shù)點位數(shù)
這篇文章主要介紹了R語言-切換科學計數(shù)法和更換小數(shù)點位數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04