Bekommen dot-Produkt von dataframe mit vector und zurück dataframe, in Pandas
Ich bin nicht in der Lage, den Eingang zu finden auf der Methode dot()
in der offiziellen Dokumentation. Aber die Methode gibt es und ich kann es benutzen. Warum ist das so?
Zu diesem Thema, gibt es eine Möglichkeit, compute-element-Weise Multiplikation jeder Zeile ein Daten-frame mit einem anderen Vektor? (und erhalten eine dataframe
zurück?), also ähnlich wie dot()
aber anstatt computing das Skalarprodukt berechnet man die element-wise-Produkt.
- Man könnte dies als ein issue auf github. Wenn Sie die Kasse docstring auf Punkt-es sagt Ihnen, was es tut (wenn Sie mit ipython verwenden
df.dot?
).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist ein Beispiel, wie sich zu vermehren ein DataFrame durch einen Vektor:
dot()
ist nicht Teil der offiziellen doc?dot
Methoden in der Pandas.Series.dot
ist geerbt vonndarray.dot
, daSeries
ist eine Unterklasse von NumPy istndarray
. Finden Sie in der Dokumentation, die hier. FürDataFrame.dot
meine Vermutung ist, dass Sie einfach nicht bekommen, um zu dokumentieren es. (Es ist das Verhalten ziemlich verständlich ein Blick auf die definition inpandas/core/frame.py
allerdings nicht.)pandas.Series
ist nicht mehr eine Unterklasse vonndarray
, aber es hat noch eindot
- Methode.mul
ist dabei im wesentlichen eine äußere-Produkt, währenddot
ist ein inneres Produkt. Lassen Sie mich zu erweitern auf die akzeptierte Antwort:Also:
df.mul
dauert matrix der Form (6,2) und Vektor (6, 1) und gibt die matrix-Form (6,2)Während:
df.dot
dauert matrix der Form (6,2) und Vektor (2,1) und zurück (6,1).Sind das nicht die selben Betrieb, Sie sind äußere und innere Produkte, beziehungsweise.
Es ist ziemlich schwer zu sagen, mit einem gewissen Grad an Genauigkeit.
Oft, eine Methode existiert und ist Undokumentiert, weil es als das innere des Verkäufers und können jederzeit geändert werden.
Könnte es natürlich sein, eine einfache Aufsicht durch die Leute, die zusammen die Dokumentation.
Bezüglich deiner zweiten Frage; ich weiß wirklich nicht darüber - aber es könnte besser sein, eine neue S/O-Frage für Sie.
Nur das Scannen der API, könnte Sie etwas zu tun mit der DataFrame ist .applymap(Funktion) Funktion ?