I have a series of numpy arrays generated for example like this:
import random
N = 5
data = [[random.random() for i in range(N)] for j in range(N)]
names = ['a','b','c','d','e']
df = pd.DataFrame(data)
df = df.transpose()
df.columns = names
ie:
a b c d e
0.01 0.03 0.01 0.2 0.04
0.2 0.01 0.02 0.01 0.1
...
and I would like to format it so that it looks like this:
name value
a 0.01
b 0.03
c 0.01
d 0.2
e 0.04
a 0.2
b 0.01
....
(order of data is not important)
I have tried pandas dataframe transpose:
df = pd.DataFrame(data)
df = df.transpose()
df.columns = names
but the result looks like this:
a 0.1 0.2 0.01 0.2
b 0.3 0.1 0.2 0.01
....
Any idea on how to reformat the numpy arrays/pandas dataframe to have two columns of data?