R语言 行与列的操作

选择列

数据框/dataframe:

引用:

  • dn、d[,n]、d"name"、d[,“name”]、d$name 得到某一列组成的矢量。
  • d[n]、d[“name”] 得到某一列组成的数据框。
  • d[c(m,n,…)]、d[,c(m,n,…)]、d[,c(“name1”,“name2”,…)]得到若干列组成的数据框。

    其它技巧:

  • 负号表示剔除。
1
2
3
4
  allnames=names(rawdata)
  vnames=c("OptType","OptConfig","Gflops")
  vnames2=allnames %in% vnames
  snames=allnames[!vnames2]
  • 可以用 grep() 搜索变量名。比如 mydata[grep("^q", names(mydata))] 选择名称以“q”开头的数据列。

列表/List:

list列的引用

  • d[[“colname”]] 得到成分名为colname的列矢量

选择行

数据框:

引用:

  • d[n,] 得到某一行组成的数据框。
  • d[c(m,n,…),n] 得到若干行组成的数据框。
  • head() 得到前6行组成的数据框。
  • tail() 得到最后6行组成的数据框。

条件引用。例如:

  • d[d$y>8,] 得到d中满足y>8的行组成的数据框。
  • d$x[d$y>8] 得到d中满足y>8的行的列x组成的矢量。

数据框行的遍历

  • 使用索引进行遍历
1
2
for(i in 1:nrow(rawdata))
  dosomething(rawdata[i,])