Преобразование двух списков в матрицу

Я постараюсь быть максимально ясным, и я начну с объяснения, почему я хочу преобразовать два массива в матрицу.

Чтобы построить производительность портфеля и рыночный индекс, мне нужна структура данных, как в этом формате:

[[portfolio_value1, index_value1] [portfolio_value2, index_value2]] 

Но у меня есть данные как два отдельных массива 1-D:

 portfolio = [portfolio_value1, portfolio_value2, ...] index = [index_value1, index_value2, ...] 

Итак, как преобразовать второй сценарий в первый. Я пробовал np.insert чтобы добавить второй массив к тестовой матрице, которую я имел в оболочке python, моя задача состояла в том, чтобы перенести первый массив в одну матрицу столбцов.

Любая помощь в том, как добиться этого без императивной петли, будет отличной.

2 Solutions collect form web for “Преобразование двух списков в матрицу”

Стандартная функция numpy для того, что вы хотите, это np.column_stack :

 >>> np.column_stack(([1, 2, 3], [4, 5, 6])) array([[1, 4], [2, 5], [3, 6]]) 

Итак, с вашим portfolio и index массивами, делая

 np.column_stack((portfolio, index)) 

даст что-то вроде:

 [[portfolio_value1, index_value1], [portfolio_value2, index_value2], [portfolio_value3, index_value3], ...] 

Предполагая, что длина портфеля и индекса одинакова:

 matrix = [] for i in range(len(portfolio)): matrix.append([portfolio[i], index[i]]) 

Или однострочный просмотр с использованием списка:

 matrix2 = [[portfolio[i], index[i]] for i in range(len(portfolio))] 
  • Математика NumPy работает быстрее, чем Python?
  • Как добавляет и удаляет сбор мусора Pythonic с массивом numpy?
  • TensorFlow: использование тензора для индексации другого тензора
  • Что происходит за этим типом выбора?
  • Вывод данных из всех столбцов в кадре данных в пандах
  • Numpy Добавление двух векторов разных размеров
  • Вычислить среднее по дискретным функциям с различным количеством точек выборки
  • поместить двух гауссиан в гистограмму из одного набора данных, python
  • Отправка массива C ++ на Python и обратно (расширение C ++ с помощью Numpy)
  • Как я могу произвести хороший вывод матрицы numpy?
  • Считайте уникальные строки строк в ndarray
  • Python - лучший язык программирования в мире.