난 당신이 melt
를 사용할 수 있다고 생각 :
df = pd.DataFrame({'ID':[2,3,4,5],
'Phone 1':['A', 'B', 'C', 'D'],
'Phone 2':['E', 'F', 'G', 'H'],
'Phone 3':['A', 'C', 'G', 'H']})
print (df)
ID Phone 1 Phone 2 Phone 3
0 2 A E A
1 3 B F C
2 4 C G G
3 5 D H H
print (pd.melt(df, id_vars='ID', var_name='PhoneSource', value_name='Phone'))
ID PhoneSource Phone
0 2 Phone 1 A
1 3 Phone 1 B
2 4 Phone 1 C
3 5 Phone 1 D
4 2 Phone 2 E
5 3 Phone 2 F
6 4 Phone 2 G
7 5 Phone 2 H
8 2 Phone 3 A
9 3 Phone 3 C
10 4 Phone 3 G
11 5 Phone 3 H
stack
또 다른 솔루션 :
df1 = df.set_index('ID').stack().reset_index()
df1.columns = ['ID','PhoneSource','Phone']
print (df1)
ID PhoneSource Phone
0 2 Phone 1 A
1 2 Phone 2 E
2 2 Phone 3 A
3 3 Phone 1 B
4 3 Phone 2 F
5 3 Phone 3 C
6 4 Phone 1 C
7 4 Phone 2 G
8 4 Phone 3 G
9 5 Phone 1 D
10 5 Phone 2 H
11 5 Phone 3 H
당신이 원시 데이터와 코드 당신이 DFS를 작성하고 원하는 출력 외모 방지하기 위해 무엇을 좋아하기를 게시 할 수 있습니다 모호성 – EdChum
나는 @EdChum을 당신의 관점으로 본다. 그러나 나는 이전에 링크 된 질문이 어떤 맥락을주고 있다고 생각했다. 게으른 내 부분에, 나는 인정한다! –
여기 양식은 문제와 원하는 결과를 재현하는 코드를 게시하는 것입니다. 관련 질문에 연결하는 것이 반드시 해당 질문을 완전히 완벽하게 해결하지 못한 이유를 알려주지는 않습니다. – EdChum