위해 나는 다음과 같은 데이터를 가지고 :R은 1 열에 3 열을 축소하는 데이터를 녹여 두 번 각 행
df1
id count white_v pink_v others_v
1 1 0.4 0.5 0.6
1 2 0.5 0.5 0.747
1 3 0.87 0.57 0.87
2 1 1.5 2.5 1.2
....
을하고 난에 호환되는 방식으로 데이터를 재 형성 할 다음과 같은 형식의 다른 데이터 프레임 :
df2
id count white pink
1 1 1 0
1 1 0 1
1 1 0 0
1 1 1 0
1 1 0 1
1 1 0 0
그래서 기본적으로 내가 DF2하는 DF1에서 분홍색, 흰색, 다른 사람의 값을 추가하고 싶지만, DF2는 각 색상 코딩 더미이는 방식으로 서식 (0 , 분홍색과 흰색 모두에서 0은 그 컬럼이 다른 컬럼을 의미 함을 의미합니다). 그리고 각 고객의 각 구입, DF2은 처음 세 행의 반복되는과 그 6 개 행이 첫 번째 3. 내가 달성하고자하는 것은 다음과 같은 데이터 프레임
:
df3
id count white pink v
1 1 1 0 0.4 -> indicates the value of white_v for id 1,count1
1 1 0 1 0.5 -> indicates the value of pink_v for id 1, count1
1 1 0 0 0.6 -> indicates the value of others_v for id 1, count1
1 1 1 0 0.4 -> indicates the value of white_v for id 1,count1
1 1 0 1 0.5 -> similarly as above
1 1 0 0 0.6
은
각 사람을 통해 반복하고 각 구매 횟수를 알아볼 필요가 있습니다. 내가 루프를 사용하여 생각했지만 df1과 df2의 행을 색인하기 위해 i를 사용하는 방법에 관해서는 고생했다. 그렇다면 나는 또한 모양을 사용하는 것에 대해 생각했지만 어떻게 할 수 있는지 잘 모르겠습니다.
통찰력을 크게 주셔서 감사합니다. 내 의견으로는, 그 (DF2의 형식)에서
tidyr 및 dplyr와
나쁜 생각입니다. 여분의 0/1 바 대신 "흰색", "분홍색"또는 "기타"의 요소 열을 갖는 것이 훨씬 좋습니다. – Frank