R 为前12行的一列执行特定功能?

R 为前12行的一列执行特定功能?,r,function,global,environment,divide,R,Function,Global,Environment,Divide,这很容易,但出于某种原因,我遇到了麻烦。我有一组数据,如下所示: File Trait Temp Value Rep PB Mortality 16 52.2 54 PB Mortality 17 21.9 91 PB Mortality 18 15.3 50 ... 36排都是这样。我需要做的是仅在前12行中将值列除以100。我做到了: NewData <- Data[

这很容易,但出于某种原因,我遇到了麻烦。我有一组
数据
,如下所示:

File     Trait      Temp   Value    Rep
PB       Mortality  16     52.2     54
PB       Mortality  17     21.9     91
PB       Mortality  18     15.3     50
...
36排都是这样。我需要做的是仅在前12行中将
列除以
100
。我做到了:

NewData <- Data[1:12,4]/100

NewData考虑复制数据帧,然后更新选定行的列:

NewData <- Data
NewData$Value[1:12] <- NewData$Value[1:12]/10
# NewData[1:12,4] <- NewData[1:12,4]/10           ' ALTERNATE EQUIVALENT

NewData也许你想要
drop=FALSE
Data[1:12,4,drop=FALSE]/100
我真的很好奇“%>%”的目的是什么,因为R似乎不喜欢或不理解它。那该怎么办。(我应该警告你,我是个新手)。而且,“Library(dplyr)”似乎也不起作用。R认为这是一个软件包。一旦你习惯了语法,大多数数据操作任务就会变得非常简单。它被称为“管道”语法,在dplyr包中使用。它只是意味着前面的东西被输入到下一个东西中。dplyr是一个包。您需要使用install.packages(“dplyr”)安装它,然后加载库。感谢您的解释,但它没有编辑我想要的内容。它保持了我试图除以100的值与原始数据中的值相同。不过谢谢你!:)我编辑了它。这肯定不是最优雅的答案,但它确实有效
full_data = rbind(newdata,data[13:36,])
NewData <- Data
NewData$Value[1:12] <- NewData$Value[1:12]/10
# NewData[1:12,4] <- NewData[1:12,4]/10           ' ALTERNATE EQUIVALENT