Help with tables
Hi I am not sure but if I remember correctly I had seen similar output in Frank Harrel's book. So you could check some function from Hmisc package, probably summarize. Regards Petr petr.pikal at precheza.cz r-help-bounces at r-project.org napsal dne 02.12.2007 03:16:09:
I guess you can get the result by 1) concatenating all the variables (P2_A, P2_B, P2_C) into one variable
,
2) replicating segment membership properly, 3) make the table of 1) and 2) For example, the following may do the job.
## (1) Generate data set # Set random seed set.seed(0) n.obs <- 15 # Number of patients disease.lv <- 1:10 ## different types of disease data1 <- as.data.frame(t(replicate(n.obs, sample(disease.lv, 3)))) #
Create data set
## Create segment membership segment <- sample(LETTERS[1:3], n.obs, replace=TRUE) cbind(data1, segment)
V1 V2 V3 segment 1 9 3 10 B 2 6 9 2 C 3 9 10 6 A 4 7 1 2 B 5 2 7 4 C 6 8 5 6 C 7 10 4 7 B 8 10 2 6 C 9 2 3 4 B 10 1 4 7 A 11 4 5 9 A 12 5 2 7 A 13 7 8 1 A 14 8 4 7 B 15 7 8 5 B
## (2) Table infec.all <- unlist(data1) # Concatenate all variables into one
variable
segment.all <- rep(segment, ncol(data1)) # Replicate the segment
membership as necessary
table(infec.all, segment.all)
segment.all
infec.all A B C
1 2 1 0
2 1 2 3
3 0 2 0
4 2 3 1
5 2 1 1
6 1 0 3
7 3 4 1
8 1 2 1
9 2 1 1
10 1 2 1
On Nov 30, 2007 10:10 AM, Alejandro Rodr?guez
<rodrigueza at schwabe.com.mx>
wrote:
Hello, I'm new using R and developing tables. I have a problem in developing a table. In a questionaire I made I
ask
this question "Please tell me the first three sympthoms caused by
Respiratory
tract infection you've caught this year", then the people answer three sympthoms, the first mention (Top of mind) is saved in a variable
called
"P2_A", the second mention in a variable called "P2_B" and the third mention in "P2_C". Each answer is coded with numbers like this: 1 = Flu 2 = Cough 3 = Asthma .... 13 = Fever I've already done a K-cluster analysis and segmented my data base. So
my
first task is to develop tables to develop tables of frequencies
crossing
Cluster vs. "P2_A" in order to know which are the top of mind products
and
their frequencies by cluster, then the second mention and third
mention.
I've used this instruction which worked well:
table(infec1,aglomera)
aglomera infec1 1 2 3 4 1 117 88 76 83 2 10 10 9 7 3 15 11 14 14 4 2 0 1 1 5 2 3 1 0 6 1 0 1 0 8 3 3 0 1 9 3 1 1 0 11 0 0 1 1 Where "infec1" is a factor of "P2_A" and "aglomera" is a factor of the variable "Cluster" I made. It worked well when I study them separately...however I would like to know the TOTAL mentions of each sympthom by cluster. I've done this exercise in SPSS using the
"Multiple
Response" instruction first grouping my three variables (i.e. "P2_A", "P2_B" and "P2_C") into a variable called "sick" and cross tabulating it vs. QCL_1 (my cluster variable) and it gave me the table I need in this way
(showed
at the bottom of this mail): How can I made a table like this in R???. I've tried combining my variables in a matrix and using xtabs, ftable, table, structable and a lot of combination of them but I haven't had succed with any of them. Please help me with this issue, I don't want to keep using SPSS any
more.
Thanx in advance.
P.D. Result from SPSS is shown below.
* * * C R O S S T A B U L A T I O N * * *
$SICK (group) mr sick
by QCL_1 Cluster Number of Case
QCL_1
Count I
I Row
I Total
I 1 I 2 I 3 I 4 I
$SICK --------+--------+--------+--------+--------+
1 I 130 I 97 I 83 I 89 I 399
Gripe, influenza, ca I I I I I 83.1
+--------+--------+--------+--------+
2 I 53 I 55 I 42 I 46 I 196
Tos de cualquier tip I I I I I 40.8
+--------+--------+--------+--------+
3 I 33 I 36 I 36 I 39 I 144
Dolor irritaci?n I I I I I 30.0
+--------+--------+--------+--------+
4 I 5 I 1 I 2 I 3 I 11
Bronquitis I I I I I 2.3
+--------+--------+--------+--------+
5 I 5 I 4 I 1 I 0 I 10
Sinusitis I I I I I 2.1
+--------+--------+--------+--------+
6 I 1 I 1 I 1 I 3 I 6
Rinitis I I I I I 1.3
+--------+--------+--------+--------+
8 I 8 I 6 I 4 I 4 I 22
Amigdalitis I I I I I 4.6
+--------+--------+--------+--------+
9 I 6 I 4 I 1 I 2 I 13
Faringitis I I I I I 2.7
+--------+--------+--------+--------+
10 I 1 I 2 I 2 I 3 I 8
Laringitis I I I I I 1.7
+--------+--------+--------+--------+
11 I 1 I 1 I 1 I 1 I 4
Neumonia I I I I I .8
+--------+--------+--------+--------+
13 I 0 I 0 I 1 I 0 I 1
Asma I I I I I .2
+--------+--------+--------+--------+
Column 153 116 104 107 480
Total 31.9 24.2 21.7 22.3 100.0
Percents and totals based on respondents
480 valid cases; 0 missing cases
Act. Calef Alejandro Rodr?guez Cuevas
Analista de mercado
Laboratorios Farmasa S.A. de C.V.
Schwabe Mexico, S.A. de C.V.
Bufalo Nr. 27
Col. del Valle 03100
Mexico, D.F.
Mexico
Tel. 52 00 26 80
email: rodrigueza at schwabe.com.mx
www.schwabe.com.mx
www.umckaloabo.com.mx
______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
-- ====================================== T.K. (Tae-kyun) Kim Ph.D. student Department of Marketing Marshall School of Business University of Southern California ====================================== [[alternative HTML version deleted]]
______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.