1

次の機能を実行するマクロを作成しています

  1. Excelまたはcsvなどのファイルを取得します
  2. すべてのラベルを読む
  3. 各列の平方根、平方根、対数を適切な列名で動的に生成し、それを新しいファイルに書き込みます。

Revenue_squareなどの列名を動的に生成することに固執しています。

例 " 収益、費用、利益の 3 つの列がある Excel があります。

これで、私のマクロは値を読み取り、列ごとに収益、費用、利益の平方根、対数を実行し、列名を Revenue_square、Revenue_squareroot、Revenue_log cost_square などとして Excel に書き込むことができるようになります。

以下は私のコードです

test$Rev_square = test[c(1)]^2 
data=read.delim2("//ARLMSAN01/CTRX_Data/vikasK.sharma/Desktop/balancesheet_example.csv",header=T,sep=",") 

headings = names(data) 
show (headings) 
HEADINGS = toupper(headings) 

for ( i in 1:length(HEADINGS)) { 
  show(i) 
  data$Rev_square=data[c(i)]^2 
  show(data$Rev_square) 
  names(data) 
} 
4

1 に答える 1

1

paste(またはpaste0) またはを使用sprintfして新しい列名を作成し、[[代わりに を使用$して割り当てを行うことができます。また、ループ文ではseq_alongなく使用することをお勧めします。1:length

for(i in names(mydata)) {
  newname <- paste0(i,"_squared")
  mydata[[newname]] <- mydata[[i]]^2
}
于 2012-05-24T13:41:41.243 に答える