2013-02-06 2 views
0

미안용융 R 나타난 용융 기능은 다음 표를 바꿀려고

structure(list(a = c(0.153705582462314, 0.0486852891805727, 0.0443466683559926, 
0.049402643366726, 0.10496252040361, 0.0605314701268217, 0.123066826124396, 
0.10436283816338, 0.123452539416624, 0.0921469079168177, 0.131665907599587, 
0.0927555742098017, 0.228148961056112, 0.130543777324655, 0.0843670900309334, 
0.131948120538527), b = c(0.158938848699283, 0.0487570327200071, 
0.0454810210056237, 0.0510635787328623, 0.103120937885508, 0.0639093015144946, 
0.111187181680815, 0.0978797635763352, 0.0792834772158317, 0.0582100024292881, 
0.0860846940492594, 0.0620370376768188, 0.11814043806398, 0.0825043302248793, 
0.0615953756935117, 0.0711048468042418), c = c(0.148449985263957, 
0.0514334902734327, 0.0448107469650824, 0.0553431826494535, 0.11011576290828, 
0.0596050964023732, 0.109924244560051, 0.100309207109092, 0.0772350806188979, 
0.0567484442878015, 0.0943868769266179, 0.0642831549581465, 0.117850661875511, 
0.0868600001807722, 0.0619469756159616, 0.0745909201443937), 
    d = c(0.153576142965318, 0.0440065816952808, 0.0383730598042165, 
    0.0466911489805908, 0.0883448739785253, 0.052233465825278, 
    0.0782617872165657, 0.0740854821951614, 0.0704324151657985, 
    0.051813360749928, 0.0865163379367009, 0.0581975106052581, 
    0.118039038983586, 0.27, 0.0567767394969306, 
    0.0641904998624335), e = c(0.161975563218496, 0.0457647898614343, 
    0.0394148591712433, 0.0454720734366032, 0.0822881130339494, 
    0.0520786880977144, 0.0772094145035842, 0.0685930881198674, 
    0.0634496037760497, 0.0475349902051384, 0.0730862457567602, 
    0.0539538999707352, 0.0918201356593523, 0.0711086911717703, 
    0.0541541288301524, 0.0575437259907984)), .Names = c("a", 
"b", "c", "d", "e"), class = "data.frame", row.names = c("Naphthalene", 
"Acenaphtylene", "Acenaphthene", "Fluorene", "Phenenthrene", 
"Anthracene", "Fluoranthene", "Pyrene", "Benzo(a)anthracene", 
"Chysene", "Benzo(b)fluoranthene", "Benzo(k)fluoranthene", "Benzo(a)pyrene", 
"Indeno(1.2.3-cd)pyrene", "Dibenz(a.h)anthracene", "Benzo(g.h.i)perylene" 
)) 
I는 COLNAMES로 그룹을 만들고 싶어

(A, B, C, D, E, F)

는 I가 생성되는 테이블은 원래 같다 용융 함수 그러나

dfm <- melt(test,id=c("a","b","c","d","e")) 

사용.

누군가 나를 올바른 방향으로 안내 할 수 있습니까? 그것은 간단해야하지만 나는 이미 결과가없는 몇 가지 조합을 시도했다.

+0

을 당신은 ... "A" "E"를 통해의 열 이름이이 데이터를 원하는가 "긴"형식으로 ? 그렇다면'녹아 내린다 (테스트해라.) '는 그 트릭을해야한다. – Justin

+0

실제로 원하는 것은 무엇입니까? – csgillespie

답변

2

당신이 원하는 것을 실제로 말하지는 않았습니다. (원하는 것이 아닌 경우 질문을 수정하십시오.) 하지만 당신이 rownames로 저장됩니다 화학 물질 이름의 트랙을 유지하기 위해 노력하고있다 같은데요 : 또는

test$chemical = rownames(test) 

##Pointless melting as nothing really happens 
##dfm is equal to test now 
dfm = melt(test, id=c("a","b","c","d","e")) 
head(dfm) 
     a  b  c  d  e variable   value 
1 0.15371 0.15894 0.14845 0.15358 0.16198 chemical Naphthalene 
2 0.04869 0.04876 0.05143 0.04401 0.04576 chemical Acenaphtylene 
3 0.04435 0.04548 0.04481 0.03837 0.03941 chemical Acenaphthene 
4 0.04940 0.05106 0.05534 0.04669 0.04547 chemical  Fluorene 
5 0.10496 0.10312 0.11012 0.08834 0.08229 chemical Phenenthrene 
6 0.06053 0.06391 0.05961 0.05223 0.05208 chemical Anthracene 

을, 당신은 수 있습니다 후 :

dfm = melt(test, "chemical") 
head(dfm) 
     chemical variable value 
1 Naphthalene  a 0.15371 
2 Acenaphtylene  a 0.04869 
3 Acenaphthene  a 0.04435 
4  Fluorene  a 0.04940 
5 Phenenthrene  a 0.10496 
6 Anthracene  a 0.06053 
+0

하나의 명명 된 값과 하나의 명명 된 변수라는 두 개의 열을 추가하는 것과 다른 점은 무엇입니까? – Justin

+1

@ Justin 차이는 없습니다. 나는 OP가 rownames와 약간 혼동 스럽다고 생각한다. – csgillespie

+0

안녕하세요 csgillespie, 그건 내 문제 였어! 고마워요! 화학 칼럼을 추가하는 것이 누락 된 부분이었습니다. (나는 미래에 내 질문에 더 분명해질 것이다). – FranciscoC

0

는 이후있어 어떤 경우에는 게시 @csgillespie 두 번째 옵션은 또한 stack를 사용하여 기본 R에 매우 간단한 방법으로이 작업을 수행 할 수 있습니다

mydf2 <- data.frame(chemical = rownames(mydf), stack(mydf)) 
head(mydf2) 
#  chemical  values ind 
# 1 Naphthalene 0.15370558 a 
# 2 Acenaphtylene 0.04868529 a 
# 3 Acenaphthene 0.04434667 a 
# 4  Fluorene 0.04940264 a 
# 5 Phenenthrene 0.10496252 a 
# 6 Anthracene 0.06053147 a 
관련 문제