এসএএসসি প্রস ফ্রিকের আর কি সমান?


18

কেউ কি এসএএস এর সমতুল্য আর সম্পর্কে জানে PROC FREQ?

আমি একবারে একাধিক ভেরিয়েবলের সংক্ষিপ্ত বর্ণনামূলক পরিসংখ্যান উত্পন্ন করার চেষ্টা করছি।


2
কেন এই প্রশ্নটি বন্ধ ছিল? এটি ডেটা ভিজ্যুয়ালাইজেশনের সাথে সম্পর্কিত এবং বেশ কয়েকটি সার্থক প্রতিক্রিয়া তৈরি করেছে।
z0lo

উত্তর:


12

আমি ব্যবহার tableএবং prop.table, কিন্তু CrossTableমধ্যে gmodelsপ্যাকেজ দিতে পারে এমনকি আপনি এসএএস কাছাকাছি ফলাফল। এই লিঙ্কটি দেখুন

এছাড়াও, "একবারে একাধিক ভেরিয়েবলের জন্য বর্ণনামূলক পরিসংখ্যান তৈরি করতে" আপনি এই summaryফাংশনটি ব্যবহার করবেন ; যেমন summary(mydata),।



9

বেস আর তে ডেটা সংক্ষিপ্ত করা কেবল একটি মাথা ব্যথা। এটি এমন একটি অঞ্চলের যেখানে এসএএস বেশ ভাল কাজ করে। আর এর জন্য, আমি plyrপ্যাকেজটি সুপারিশ করছি ।

এসএএসে:

/* tabulate by a and b, with summary stats for x and y in each cell */
proc summary data=dat nway;
  class a b;
  var x y;
  output out=smry mean(x)=xmean mean(y)=ymean var(y)=yvar;
run;

সাথে plyr:

smry <- ddply(dat, .(a, b), summarise, xmean=mean(x), ymean=mean(y), yvar=var(y))

8

আমি এসএএস ব্যবহার করি না; সুতরাং নীচের প্রতিলিপি করা হয়েছে কিনা সে সম্পর্কে আমি মন্তব্য করতে পারি না SAS PROC FREQ, তবে আমি প্রায়শই ব্যবহার করি এমন ডেটা.ফ্রেমে ভেরিয়েবলগুলি বর্ণনা করার জন্য দুটি দ্রুত কৌশল:

  • describeইন Hmiscসংখ্যাসূচক এবং অ-সংখ্যাগত ডেটা সহ ভেরিয়েবলের একটি দরকারী সংক্ষিপ্তসার সরবরাহ করে
  • describeইন psychসংখ্যার তথ্য জন্য বর্ণনামূলক পরিসংখ্যান সরবরাহ করে

আর উদাহরণ

> library(MASS) # provides dataset called "survey"
> library(Hmisc) # Hmisc describe
> library(psych) # psych describe

নিম্নলিখিতটির ফলাফল Hmisc describe:

> Hmisc::describe(survey)
survey 

 12  Variables      237  Observations
----------------------------------------------------------------------------------------------------------------------
Sex 
      n missing  unique 
    236       1       2 

Female (118, 50%), Male (118, 50%) 
----------------------------------------------------------------------------------------------------------------------
Wr.Hnd 
      n missing  unique    Mean     .05     .10     .25     .50     .75     .90     .95 
    236       1      60   18.67   16.00   16.50   17.50   18.50   19.80   21.15   22.05 

lowest : 13.0 14.0 15.0 15.4 15.5, highest: 22.5 22.8 23.0 23.1 23.2 
----------------------------------------------------------------------------------------------------------------------
NW.Hnd 
      n missing  unique    Mean     .05     .10     .25     .50     .75     .90     .95 
    236       1      68   18.58   15.50   16.30   17.50   18.50   19.72   21.00   22.22 

lowest : 12.5 13.0 13.3 13.5 15.0, highest: 22.7 23.0 23.2 23.3 23.5 
----------------------------------------------------------------------------------------------------------------------
[ABBREVIATED OUTPUT]

তারপরে নীচে psych describeঅঙ্কের ভেরিয়েবলের আউটপুট দেওয়া হল :

> psych::describe(survey[,sapply(survey, class) %in% c("numeric", "integer") ])
       var   n   mean    sd median trimmed   mad    min   max range  skew kurtosis   se
Wr.Hnd   1 236  18.67  1.88  18.50   18.61  1.48  13.00  23.2 10.20  0.18     0.36 0.12
NW.Hnd   2 236  18.58  1.97  18.50   18.55  1.63  12.50  23.5 11.00  0.02     0.51 0.13
Pulse    3 192  74.15 11.69  72.50   74.02 11.12  35.00 104.0 69.00 -0.02     0.41 0.84
Height   4 209 172.38  9.85 171.00  172.19 10.08 150.00 200.0 50.00  0.22    -0.39 0.68
Age      5 237  20.37  6.47  18.58   18.99  1.61  16.75  73.0 56.25  5.16    34.53 0.42

3

আমি {EPICALC from থেকে কোডবুক ফাংশনটি ব্যবহার করি যা একটি সংখ্যার ভেরিয়েবলের সংক্ষিপ্ত পরিসংখ্যান এবং স্তরগুলির লেভেল এবং উপাদানগুলির জন্য কোড সহ একটি ফ্রিকোয়েন্সি টেবিল দেয়। http://cran.r-project.org/doc/contrib/Epicalc_Book.pdf (p.50 দেখুন) তবুও এটি খুব কার্যকর কারণ এটি পরিমাণগত ভেরিয়েবলের জন্য এসডি সরবরাহ করে।

উপভোগ করুন!

নমুনা আউটপুট


1
+1 (পূর্ব থেকে) আমি সত্যিই পছন্দ করি যেভাবে codebook()এইটি দেওয়া হয়েছে। 1 ইস্যুটি হ'ল naগুলি হ'ল, যা আপনি আপনার আউটপুটে অন্তর্ভুক্ত রাখতে চাইতে পারেন। ডাব্লু / এই (কমপক্ষে ডাব্লু / ফ্যাক্টর) ডিল করার জন্য 1 টি উপায় ? Recode.is.na 1 ম (উদাহরণস্বরূপ, "অনুপস্থিত" থেকে) ব্যবহার করা হয়; সংখ্যার ভেরিয়েবলের জন্য, আপনি কলামের বামে অবিলম্বে একটি নতুন ভেরিয়েবল তৈরি করতে পারেন / এর উপর ভিত্তি করে একটি লজিক্যাল মান is.na(), তারপরে রান করুন codebook()। যদিও এটি একটি ক্লুজের কিছুটা হলেও।
গুং - মনিকা পুনরায়

3

আপনি আমার সংক্ষিপ্ততর প্যাকেজ ( সিআরএএন লিঙ্ক ) পরীক্ষা করতে পারেন যা মার্কডাউন এবং এইচটিএমএল ফর্ম্যাটিং বিকল্পগুলির সাথে একটি কোডবুকের মতো ফাংশন অন্তর্ভুক্ত করে।

install.packages("summarytools")
library(summarytools)
dfSummary(CO2, style = "grid", plain.ascii = TRUE)

ডেটাফ্রেমের সংক্ষিপ্তসার

থেকে CO2

+------------+---------------+-------------------------------------+--------------------+-----------+
| Variable   | Properties    | Stats / Values                      | Freqs, % Valid     | N Valid   |
+============+===============+=====================================+====================+===========+
| Plant      | type:integer  | 1. Qn1                              | 1: 7 (8.3%)        | 84/84     |
|            | class:ordered | 2. Qn2                              | 2: 7 (8.3%)        | (100.0%)  |
|            | + factor      | 3. Qn3                              | 3: 7 (8.3%)        |           |
|            |               | 4. Qc1                              | 4: 7 (8.3%)        |           |
|            |               | 5. Qc3                              | 5: 7 (8.3%)        |           |
|            |               | 6. Qc2                              | 6: 7 (8.3%)        |           |
|            |               | 7. Mn3                              | 7: 7 (8.3%)        |           |
|            |               | 8. Mn2                              | 8: 7 (8.3%)        |           |
|            |               | 9. Mn1                              | 9: 7 (8.3%)        |           |
|            |               | 10. Mc2                             | 10: 7 (8.3%)       |           |
|            |               | ... 2 other levels                  | others: 14 (16.7%) |           |
+------------+---------------+-------------------------------------+--------------------+-----------+
| Type       | type:integer  | 1. Quebec                           | 1: 42 (50%)        | 84/84     |
|            | class:factor  | 2. Mississippi                      | 2: 42 (50%)        | (100.0%)  |
+------------+---------------+-------------------------------------+--------------------+-----------+
| Treatment  | type:integer  | 1. nonchilled                       | 1: 42 (50%)        | 84/84     |
|            | class:factor  | 2. chilled                          | 2: 42 (50%)        | (100.0%)  |
+------------+---------------+-------------------------------------+--------------------+-----------+
| conc       | type:double   | mean (sd) = 435 (295.92)            | 95: 12 (14.3%)     | 84/84     |
|            | class:numeric | min < med < max = 95 < 350 < 1000   | 175: 12 (14.3%)    | (100.0%)  |
|            |               | IQR (CV) = 500 (0.68)               | 250: 12 (14.3%)    |           |
|            |               |                                     | 350: 12 (14.3%)    |           |
|            |               |                                     | 500: 12 (14.3%)    |           |
|            |               |                                     | 675: 12 (14.3%)    |           |
|            |               |                                     | 1000: 12 (14.3%)   |           |
+------------+---------------+-------------------------------------+--------------------+-----------+
| uptake     | type:double   | mean (sd) = 27.21 (10.81)           | 76 distinct values | 84/84     |
|            | class:numeric | min < med < max = 7.7 < 28.3 < 45.5 |                    | (100.0%)  |
|            |               | IQR (CV) = 19.23 (0.4)              |                    |           |
+------------+---------------+-------------------------------------+--------------------+-----------+

সম্পাদনা

এর নতুন সংস্করণে summarytools , freq()ফাংশন (যা, সহজবোধ্য ফ্রিকোয়েন্সি টেবিল উত্পাদন করে টু-পয়েন্ট এমন আরো অনেক মূল প্রশ্ন শুভেচ্ছা) ডেটা ফ্রেম সেইসাথে একক ভেরিয়েবল গ্রহণ করে। ক্রস-ট্যাবুলেশনের জন্য (যা প্রো ফ্রিকও করেন), ctable()ফাংশনটি দেখুন।

freq(CO2)

ফ্রিকোয়েন্সিতে

থেকে CO2 $ প্ল্যান্ট

প্রকার : অর্ডার ফ্যাক্টর

          Freq   % Valid    % Valid Cum   % Total    % Total Cum
    Qn1      7      8.33           8.33      8.33           8.33
    Qn2      7      8.33          16.67      8.33          16.67
    Qn3      7      8.33          25.00      8.33          25.00
    Qc1      7      8.33          33.33      8.33          33.33
    Qc3      7      8.33          41.67      8.33          41.67
    Qc2      7      8.33          50.00      8.33          50.00
    Mn3      7      8.33          58.33      8.33          58.33
    Mn2      7      8.33          66.67      8.33          66.67
    Mn1      7      8.33          75.00      8.33          75.00
    Mc2      7      8.33          83.33      8.33          83.33
    Mc3      7      8.33          91.67      8.33          91.67
    Mc1      7      8.33         100.00      8.33         100.00
   <NA>      0                               0.00         100.00
  Total     84    100.00         100.00    100.00         100.00
থেকে CO2 $ প্রকার

প্রকার : কারখানা

                Freq   % Valid    % Valid Cum   % Total    % Total Cum
       Quebec     42     50.00          50.00     50.00          50.00
  Mississippi     42     50.00         100.00     50.00         100.00
         <NA>      0                               0.00         100.00
        Total     84    100.00         100.00    100.00         100.00
থেকে CO2 $ চিকিত্সা

প্রকার : কারখানা

               Freq   % Valid    % Valid Cum   % Total    % Total Cum
  nonchilled     42     50.00          50.00     50.00          50.00
     chilled     42     50.00         100.00     50.00         100.00
        <NA>      0                               0.00         100.00
       Total     84    100.00         100.00    100.00         100.00

2

সকলকে পরামর্শের জন্য ধন্যবাদ। আমি টেবিল বা আরসিএমডিআর এর নামসূত্র ফাংশন এবং প্রয়োগ ব্যবহার করে শেষ করেছি:

apply(dataframe[,c('need_rbcs','need_platelets','need_ffp')],2,table) 

এটি বেশ ভাল কাজ করে এবং খুব অসুবিধে হয় না। তবে আমি অবশ্যই এই কয়েকটি সমাধানের চেষ্টা করব!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.