не удается создать фрейм данных pandas из массива numpy

#python #arrays #pandas #numpy #dataframe

#python #массивы #pandas #numpy #фрейм данных

Вопрос:

Я новичок в Pandas. У меня есть два массива var и esvar с 1000 значениями в каждом. Когда я пытаюсь поместить его в фрейм данных. Я получаю одну строку. Я пробовал транспонировать матрицы, но все равно получаю тот же результат.

 df = pd.DataFrame({'VaR':[var],'ESVaR':[esvar]})
print(df)
  

Также пытался:

 df = pd.DataFrame({'VaR':var[:,0],'ESVaR':esvar[:,1]})
print(df)
  

(Это приводит к ошибке «слишком много индексов»)

Это результат первого, но я хочу, чтобы приведенное ниже было в нескольких строках, а не в одной строке.

 VaR                                              ESVaR
0  [-0.10515868551869557, -0.11579987587576174, -...  [-0.09180443392815332, -0.10857606448322654, -...
  

Комментарии:

1. Избавьтесь от квадратных скобок вокруг car и esvar.

2. Спасибо, что сработало!

Ответ №1:

просто поместите символы списка вокруг ваших переменных, и все готово:

 df = pd.DataFrame({'VaR': var,'ESVaR': esvar})
  

Поскольку var и esvar уже являются списками, ваша нотация создает списки из списков и, следовательно, приводит только к одной строке в фрейме данных.

Ответ №2:

Как упоминалось Куанг Хоангом

 df = pd.DataFrame({'VaR':var,'ESVaR':esvar})
print(df)