Voici comment écrire du code qui génère une statistique dans le sens des lignes des données numériques en tant que quantité d'entités.
Tout d'abord, comment bien écrire
#Comment ajouter un par un
df["sum"] = df.sum(axis=1)
df["max"] = df.max(axis=1)
df["min"] = df.min(axis=1)
df["mean"] = df.mean(axis=1)
df["median"] = df.median(axis=1)
df["mad"] = df.mad(axis=1)
df["var"] = df.var(axis=1)
df["std"] = df.std(axis=1)
df["skew"] = df.skew(axis=1)
df["kurt"] = df.kurt(axis=1)
df.head()
C'est bien, mais cela semble un peu inconfortable compte tenu de l'évolutivité et de la maintenance.
func_list =["sum", "max", "min", "mean", "median", "mad",
"var", "std", "skew", "kurt"]
for func in func_list:
df[func] = df.apply(func, axis=1)
La fonction Lambda peut également être utilisée
f_diff = lambda x: df["xxx"]-df["yyy"]
func_list =["sum", "max", "min", "mean", "median", "mad",
"var", "std", "skew", "kurt", f_diff]
for func in func_list:
df[func] = df.apply(func, axis=1)
Dans l'apprentissage automatique, il existe de nombreuses expériences ad hoc, de sorte que le code «rédigé» a tendance à être produit en masse.
L'écriture de code aussi propre que possible le rend plus facile à réutiliser et plus extensible.
Recommended Posts