冒号后数字的含义

时间:2015-08-04 15:21:36

标签: r

std::atomic<size_t> freshDataEnd;
size_t dataWorkStart = 0;
size_t dataWorkEnd;
#pragma omp parallel
{
    #pragma omp task
    {
        //increment freshDataEnd atomically upon reading every P objects
        //return when end of file is reached
        readData(vecObj, freshDataEnd);
    }
    #pragma omp task
    {
        omp_set_num_threads(N-1);           
        while(freshDataEnd <= MAX_VEC_LEN) {
            if (dataWorkStart < freshDataEnd) {
                dataWorkEnd = freshDataEnd;
                #pragma omp parallel for schedule(dynamic, per_thread)
                for(size_t i = dataWorkStart; i < dataWorkEnd; ++i) {
                    threadWorkOnElement(vecObj, i);
                }
                dataWorkStart = dataWorkEnd;
            }
        }
    }
}

这给了我答案&#34;因子w / 8级&#34;地球&#34;,&#34; Jupiter&#34;,..:4 8 1 3 2 6 7 5&#34;

我不明白结肠后数字的含义。是否意味着地球处于因子4的位置?在阅读了几个网站之后,它说它是因素的内部水平表示,但内部水平表征的因素是什么?这让我很困惑。我是R编程的初学者。

1 个答案:

答案 0 :(得分:2)

引自the Quick-R tutorial

  

该因子将标称值存储为[ 1... k ]范围内的整数向量(其中k是标称变量中唯一值的数量),以及字符串的内部向量(原始值)映射到这些整数。

如果您没有指定因子的级别,R将按字母顺序排序,并使用升序的整数列表识别每个级别。

在您的示例中,整数列表显示每个条目在原始向量中的位置;你的向量是Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune。但有序向量为Earth Jupiter Mars Mercury Neptune Saturn Uranus Venus,因此Mercury位于第4位,Venus位于第8位,Earth位于第1位,依此类推。

如果您希望在输入因子时对其进行排序,则应执行以下操作:

factor(planets, levels=planets)

str(factor(planets, levels=planets))的输出是:

Factor w/ 8 levels "Mercury","Venus",..: 1 2 3 4 5 6 7 8