J'ai un tableau dans R qui a str()
de ceci :
table [1:3, 1:4] 0.166 0.319 0.457 0.261 0.248 ...
- attr(*, "dimnames")=List of 2
..$ x: chr [1:3] "Metro >=1 million" "Metro <1 million" "Non-Metro Counties"
..$ y: chr [1:4] "q1" "q2" "q3" "q4"
Et ça ressemble à ça quand je l'imprime :
y
x q1 q2 q3 q4
Metro >=1 million 0.1663567 0.2612212 0.2670441 0.3053781
Metro <1 million 0.3192857 0.2480012 0.2341030 0.1986102
Non-Metro Counties 0.4570341 0.2044960 0.2121102 0.1263597
Je veux me débarrasser de la x
y y
et le convertir en un cadre de données qui ressemble exactement à ce qui précède (trois lignes, quatre colonnes), mais sans l'élément x
o y
. Si j'utilise as.data.frame(mytable)
Au lieu de cela, j'obtiens ceci :
x y Freq
1 Metro >=1 million q1 0.1663567
2 Metro <1 million q1 0.3192857
3 Non-Metro Counties q1 0.4570341
4 Metro >=1 million q2 0.2612212
5 Metro <1 million q2 0.2480012
6 Non-Metro Counties q2 0.2044960
7 Metro >=1 million q3 0.2670441
8 Metro <1 million q3 0.2341030
9 Non-Metro Counties q3 0.2121102
10 Metro >=1 million q4 0.3053781
11 Metro <1 million q4 0.1986102
12 Non-Metro Counties q4 0.1263597
Je ne comprends probablement pas comment les tableaux sont liés aux cadres de données.
2 votes
Lors de mes recherches, j'ai été surpris de constater à quel point il était difficile de trouver une question similaire sur SO. En voici une : stackoverflow.com/questions/5855225/ C'est une manœuvre assez basique et décrite dans
?xtabs
(ce n'est pas nécessairement l'endroit le plus évident).0 votes
Je suis sûr que tout ce que vous devez faire est de mettre
deparse.level = 0
(ou éventuellement 2) dans l'appel àtable