Pandas DataFrame stack multiple column values into single column
问题 Assuming the following DataFrame: key.0 key.1 key.2 topic 1 abc def ghi 8 2 xab xcd xef 9 How can I combine the values of all the key.* columns into a single column 'key', that's associated with the topic value corresponding to the key.* columns? This is the result I want: topic key 1 8 abc 2 8 def 3 8 ghi 4 9 xab 5 9 xcd 6 9 xef Note that the number of key.N columns is variable on some external N. 回答1: You can melt your dataframe: >>> keys = [c for c in df if c.startswith('key.')] >>> pd