/ / Como armazenar matrizes numpy em uma coluna de um dataframe do Pandas? - python, python-2.7, numpy, pandas

Como armazenar matrizes numpy em uma coluna de um dataframe do Pandas? - python, python-2.7, numpy, pandas

É possível armazenar arbitrariamente numpy matrizes como os valores de um solteiro coluna em um dataframe de Pandas?

As matrizes são todas bidimensionais e pretendo usá-las para calcular valores para outras colunas no mesmo dataframe.

Para fornecer algum contexto do que estou tentando fazer aqui:

Cada matriz é uma matriz de adjacência de algunsrede, e para cada rede eu quero calcular suas várias características (por exemplo, densidade, centralidades, coeficiente de clustering, etc) que são de fato outras colunas no mesmo dataframe.

Respostas:

13 para resposta № 1

Armazene-os como elementos como faria para qualquer outro dado:

import numpy as np
import pandas as pd
a = np.arange(10).reshape(2,5)
b = np.arange(10, 20).reshape(2,5)
pd.DataFrame({"foo":[42,51], "arr":[a,b]})
Out[10]:
arr  foo
0            [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]]   42
1  [[10, 11, 12, 13, 14], [15, 16, 17, 18, 19]]   51

Note que o que você tenta fazer soa mais para usar um Panel.


1 para resposta № 2

O que quer dizer armazenar matrizes arbitrárias numpy como os valores de uma coluna em um dataframe de Pandas?

Algo assim?

import numpy as np
import pandas as pd


x = np.random.randn(50, 25)
random_frame = pd.DataFrame(x)

Isto irá armazenar a matriz x em um DataFrame, onde os nomes das colunas são 0, 1, 2, 3 ... Você poderia esclarecer? Eu acho que isso é mais um comentário, mas eu não sei se posso comentar ainda.