Ama*_*mox 12 python dataframe pandas matrix-indexing
我就是无法弄清楚第二行的“==”是什么意思:
- 这不是测试,没有 if 语句......
- 这不是变量声明......
我以前从未见过这个,问题是data.ctage==cat熊猫系列而不是测试...
for cat in data["categ"].unique():
subset = data[data.categ == cat] # Création du sous-échantillon
print("-"*20)
print('Catégorie : ' + cat)
print("moyenne:\n",subset['montant'].mean())
print("mediane:\n",subset['montant'].median())
print("mode:\n",subset['montant'].mode())
print("VAR:\n",subset['montant'].var())
print("EC:\n",subset['montant'].std())
plt.figure(figsize=(5,5))
subset["montant"].hist(bins=30) # Crée l'histogramme
plt.show() # Affiche l'histogramme
Run Code Online (Sandbox Code Playgroud)
Dav*_*sta 13
它正在测试 的每个元素是否data.categ与 相等cat。这会产生一个真/假值的向量。这在 indexer 中传递给data[],它返回data与向量中的 True 值相对应的行。
总而言之,整个表达式返回data值为data.categequals的行的子集cat。
(似乎可以使用 更优雅地完成整个操作data.groupBy('categ').apply(someFunc)。)