Ich möchte gelten log2 mit applymap
und np2.log2
auf eine Daten anwenden und zeigen Sie es mit boxplot, hier ist der Code, den ich geschrieben habe:Wie log2 Transformation (mit applymap und np.log2) zu einem Panda Dataframe
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
data = pd.read_csv('testdata.csv')
df = pd.DataFrame(data)
################################
# a.
df.boxplot()
plt.title('Raw Data')
################################
# b.
df.applymap(np.log2)
df.boxplot()
plt.title('Normalized Data')
und unten ist der Boxplot, den ich für meine RAW-Daten bekomme, was in Ordnung ist, aber ich bekomme den gleichen Boxplot nach Anwendung von log2-Transformation !!! kann mir jemand bitte sagen, was ich falsch mache und was korrigiert werden sollte die normalisierten Daten mit applymap und np.log2
versuchen Sie 'df = df.applymap (yourfunc)' [API-Referenz] (http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.applymap.html#pandas-dataframe-applymap) –
Sie ändern nichts mit 'df.applymap (np.log2)', das zurückgegebene Ergebnis wird anschließend nicht verwendet. Verwenden Sie 'df2 = df.applymap (np.log2)' und verwenden Sie das neue df zum Plotten. –
wow great @ShiheZhang Ich habe so viel Zeit auf diesen sehr kleinen Punkt verschwendet, danke! – Hazmat