Во-первых, я создаю простой кадр данных в R:Использование переменной Ссылку столбца в R Dataframe
Test <- as.data.frame(matrix(ncol=20,nrow=60))
Следующая заливаю пару колонок:
Test[,1] <- 1
Test[,2] <- 2
Далее я проверить чтобы убедиться, что я могу правильно ссылаться на значения:
Test[1,2]
[1] 2
Это работает как ожидалось. затем создать пару переменных в подготовке к для цикла с нецелой последовательностью:
j <- 1.2
h <- ((j-1)*10)
h
[1] 2
потом использовать «H» для того, чтобы вытащить значение из кадра данных:
Test[1,h]
[1] 1
Это дает неожиданный результат. (Это должно быть 2).
Почему это? Есть ли какая-то проблема в R, связанная с ссылкой на столбцы с использованием переменных?
Возможно потому, что '1,2 - 1 == 0.2' дает ложные: http://stackoverflow.com/questions/9508518/why-are-these-numbers-not- равны. Также попробуйте 'as.integer (h)' и увидите, что он дает вам '1'. –
Ах, это решает проблему, спасибо огромное! Я смогу использовать 'round()' в этом параметре, чтобы сделать его идеальным. – BarnSoHard