Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのデータフレームに要素ごとに関数を適用するにはどうすればよいですか?


データフレームの要素に沿って特定の関数を適用する必要がある場合があります。すべての関数をベクトル化することはできません。ここで、「applymap」機能が登場します。

これは、入力として単一の値を取り、出力として単一の値を返します。

import pandas as pd
import numpy as np
my_df = pd.DataFrame(np.random.randn(5,5),columns=['col_1','col_2','col_3', 'col_4', 'col_5'])
print("The dataframe generated is ")
print(my_df)
my_df.applymap(lambda x:x*11.45)
print("Using the applymap function")
print(my_df.apply(np.mean))

出力

The dataframe generated is
    col_1       col_2      col_3      col_4     col_5
0  -0.671510  -0.860741   0.886484   0.842158   2.182341
1  -1.355763   0.247240   -0.653630  -0.278095  0.163044
2  -0.816203   1.664006   1.555648   1.625890   -0.412338
3  -1.013273   -1.565076  1.297014   -0.303504  -1.623573
4  0.725949    -0.077588  -0.886957  0.433478   -0.300151
Using the applymap function
col_1  -0.626160
col_2  -0.118432
col_3  0.439712
col_4  0.463985
col_5  0.001865
dtype: float64

説明

  • 必要なライブラリがインポートされ、使いやすいようにエイリアス名が付けられています。

  • データフレームは、「ランダム」関数を使用して、5行5列のデータを作成することで作成されます。

  • 列の名前も、データフレーム値を定義するときにリスト内で定義されます。

  • データフレームはコンソールに印刷されます。

  • 「applymap」関数は、データフレームの要素に適用されます。

  • 関数定義は、「applymap」関数内に記述されたラムダ関数です。

  • データはコンソールに印刷されます。


  1. Python-パンダのデータフレームをCSVファイルに書き込む方法

    pandasデータフレームをPythonでCSVファイルに書き込むには、 to_csv()を使用します 方法。まず、リストの辞書を作成しましょう- # dictionary of lists d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],'Date_of_purchase': ['2020-10-10', '2020-10-12', '

  2. Python関数はどのようにして関数を返すことができますか?

    Pythonはファーストクラスの関数をサポートしています。実際、Pythonのすべての関数はファーストクラスの関数です。 Pythonは関数から関数を返し、リストなどのコレクションに関数を格納し、通常は変数やオブジェクトと同じように扱います。 他の関数で関数を定義し、関数を返すことはすべて可能です。 指定されたコードは次のように作り直されています。関数内で関数を定義し、これらを返します。 例 def f2(c, d):     return c, d def f1(a, b):     c = a + 1     d = b +