简体   繁体   中英

Extracting row and column from data frame in R

I have a csv file from which i would like to extract second column values into a data frame the example csv file looks like the image below

在此处输入图片说明

Following is the script that i written

ICVdir <- "/media/dev/Daten/Task1/T1_Images"
#loding csv file from ICV
mycsv  <- list.files(ICVdir,pattern = "*.csv",full.names = T )
af<- read.csv(file = mycsv,header = TRUE, sep = "\t")
ICV<- as.data.frame(af[,2],drop=FALSE)

The output of data.frame af is :

 subj_id.eTIV_FLIRT.FASTvol_noCSF
1             Sub1,0.824198,1360784
2             Sub2,0.792987,1350024
3             Sub3,0.831011,1304154
4             Sub4,0.840316,1277706
5             Sub5,0.928503,1562892
6             Sub6,0.840962,1367487
7             Sub7,0.776565,1486331
8             Sub8,0.845449,1394665
9             Sub9,0.924351,1496015
10           Sub10,0.885719,1450941
11       Mean eTIV_FLIRT,0.8490061,

I would like to extract the values in column eTIV_FLIRT( which is second column into a data frame

I am obtaining following output

 Error in `[.data.frame`(af, , 2) : undefined columns selected

kindly please let me know what is wrong in my code

In your code

af<- read.csv(file = mycsv,header = TRUE, sep = "\t")

you specify a tab as the separator. Your data.frame contains only one column. Eg, the first row is the single value Sub1,0.824198,1360784 .

As you have only one column, you cannot extract the second with af[,2] .

Simply removing the sep (leaving the default comma) should solve your problem.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM