Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
I';我在理解R中条件句的语法方面有困难_R - Fatal编程技术网

I';我在理解R中条件句的语法方面有困难

I';我在理解R中条件句的语法方面有困难,r,R,我正在尝试创建一个程序,计算一个数字在一个数据帧中出现的总次数。但是,我正在运行的代码会给我以下错误: 错误:在“C_bin2++}”中出现意外的“}”,或错误:在“}”中出现意外的“}” 最初,数据是从文件中读取的,但我只是将其全部写出来进行演示。还有一大部分代码被遗漏了,因为它是重复的,但是你会明白我要做的事情的要点。请帮我理解这个问题。谢谢大家! x_axis = c(94.5, 22.5, 69.0, -145.5, 13.5, -186.0, -79.0, -47.0

我正在尝试创建一个程序,计算一个数字在一个数据帧中出现的总次数。但是,我正在运行的代码会给我以下错误:

错误:在“C_bin2++}”中出现意外的“}”,或错误:在“}”中出现意外的“}”

最初,数据是从文件中读取的,但我只是将其全部写出来进行演示。还有一大部分代码被遗漏了,因为它是重复的,但是你会明白我要做的事情的要点。请帮我理解这个问题。谢谢大家!


x_axis = c(94.5,   22.5,   69.0, -145.5,   13.5, -186.0,  -79.0,  -47.0,  -15.0,  -72.5,   27.0,    6.0,   84.5,   -9.0,
-21.5   ,60.5,   40.5, -316.5,  -61.5,   54.5,   -3.5,   -7.0,  -38.5,  -30.5,  -20.5,   41.0,  -58.0,  -21.0,
12.0    ,5.0   ,34.0  , 29.0   ,61.0,  -52.5 ,-43.5)

hr6_distance = data.frame(x_axis)

C_bin1 = c()
C_bin2 = c()
C_bin3 = c()
C_bin4 = c()
C_bin5 = c()
C_bin6 = c()
C_bin7 = c()
C_bin8 = c()
C_bin9 = c()
C_bin10 = c()
C_bin11 = c()
C_bin12 = c()
C_bin13 = c()
C_bin14 = c()
C_bin15 = c()
C_bin16 = c()
C_bin17 = c()


for (col in 1:nrow(hr6_distance))
{ 
  if (hr6_distance[col] > 500) 
  {
    C_bin1++
  } else if ((x_axis <= 500) && (x_axis < 400)) 
  {
      C_bin2++
  }
}

x_轴=c(94.5,22.5,69.0,-145.5,13.5,-186.0,-79.0,-47.0,-15.0,-72.5,27.0,6.0,84.5,-9.0,
-21.5   ,60.5,   40.5, -316.5,  -61.5,   54.5,   -3.5,   -7.0,  -38.5,  -30.5,  -20.5,   41.0,  -58.0,  -21.0,
12.0    ,5.0   ,34.0  , 29.0   ,61.0,  -52.5 ,-43.5)
hr6_距离=数据帧(x_轴)
C_bin1=C()
C_bin2=C()
C_bin3=C()
C_bin4=C()
C_bin5=C()
C_bin6=C()
C_bin7=C()
C_bin8=C()
C_bin9=C()
C_bin10=C()
C_bin11=C()
C_bin12=C()
C_bin13=C()
C_bin14=C()
C_bin15=C()
C_bin16=C()
C_bin17=C()
用于(1列:nrow(hr6_距离))
{ 
如果(hr6_距离[col]>500)
{
C_bin1++

}否则如果((x_轴我不确定您计划做什么,但我假设您希望根据您的条件分配C_bin1,C_bin2向量,如果您可以尝试以下操作:

#iterate through the data frame
for (col in 1:nrow(hr6_distance))
{
  #get the column 
  value = hr6_distance[col, ][1]
  #check for the condition 
  if (value > 500) {
    #add it to the vacto C_bin1
    C_bin1[length(C_bin1) + 1] = value
    
    
    
  } else if (value <= 500 & value > 400) {
    #add it to the vacto C_bin2
    C_bin2[length(C_bin2) + 1] = value
    
  }
}

获取每个向量的长度。

您要寻找的预期输出是什么?仅举个例子,上面的向量中有2450个。然后,值为2R的C_bin2没有
++
运算符。您需要执行
C_bin1
length(C_bin1)
length(C_bin2)