मूल्यों की वेक्टर में एक आवृत्ति तालिका कैसे परिवर्तित करें?


13

आर या एक्सेल का उपयोग करना, आवृत्ति तालिका को मूल्यों के वेक्टर में बदलने का सबसे आसान तरीका क्या है?

उदाहरण के लिए, आप निम्न आवृत्ति तालिका को कैसे परिवर्तित करेंगे

Value   Frequency
  1.      2
  2.      1
  3.      4
  4.      2
  5.      1

निम्नलिखित वेक्टर में?

1, 1, 2, 3, 3, 3, 3, 4, 4, 5

जवाबों:


21

R में, आप इसे repकमांड का उपयोग करके कर सकते हैं :

tab <- data.frame(value=c(1, 2, 3, 4, 5), freq=c(2, 1, 4, 2, 1))
vec <- rep(tab$value, tab$freq)

यह निम्नलिखित परिणाम देता है:

> tab
  value freq
1     1    2
2     2    1
3     3    4
4     4    2
5     5    1

> vec
 [1] 1 1 2 3 3 3 3 4 4 5

विवरण के लिए, repटाइप करके कमांड के लिए सहायता फ़ाइल देखें ?rep


2
या, एक सरल आवृत्ति तालिका दिया के लिए vec <- sample(1:5, 20, TRUE)के द्वारा बनाई गई table(): rep(names(table(vec)), table(vec))। इसके बाद as.numeric()श्रेणियों को वास्तविक संख्याओं के साथ बदलने की आवश्यकता होती है ।
काराक्ल

1

स्पष्ट रूप से R में यह सरल है।

Excel में मैं एक सहायक कॉलम का उपयोग करूँगा (यदि मान A1 में है):

  value freq help
1     1    2  =REPT(A2 & ", ",B2)
2     2    1  =C1 & REPT(A3 & ", ",B3)
3     3    4  (drag or copy from upper cell)
4     4    2  (drag or copy from upper cell)
5     5    1  (drag or copy from upper cell)
              =LEFT(C6, LEN(C6)-1)

C7 में आपके पास अपना परिणाम है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.