Фрейм данных с определенными именами столбцов не может разбивать продукт на серии / фреймы данных - PullRequest
0 голосов
/ 05 ноября 2019

Когда я пытаюсь получить кадр данных размером 3 * 5 x , например, точечное произведение с серией 5 * 1 , например, , выдается ошибка «Матрицы не выровнены»,Размеры здесь не должны быть проблемой при работе с точечным продуктом (3 * 5 точка 5 * 1 должна дать мне серию 3 * 1), и я проверил исходный код для точечного продукта. Кажется, Python попытался объединить имена столбцов см. Здесь кадра данных с индексом ряда, и в моем случае очевидно, что они не могут быть выровнены, и поэтому измерения не будут совпадать. Я должен переименовать столбцы в индексоподобные объекты 0,1,2 ... так, чтобы они могли быть выровнены с индексом ряда. Но мне интересно, есть ли лучший способ сделать это? Что если у меня есть 1000 столбцов в кадре данных с предварительно установленными именами, я должен все же попытаться сначала преобразовать эти имена в целые числа? Почему Python так работает с точечным продуктом?

1 Ответ

0 голосов
/ 05 ноября 2019
import pandas as pd
df1 = pd.read_clipboard(sep=',',header=None)
df1
0   1   2   3   4
0   12  0   0   0   0
1   12  0   0   0   0
2   12  0   0   0   0

df2 = pd.read_clipboard(sep=',',header=None)
df2
0
0   1
1   1
2   2
3   1
4   5

import numpy as np

np.dot(df1.values,df2.values)
array([[12],
       [12],
       [12]])
...