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

Pandasデータフレームの1つ以上の列のデータ型を変更します


このチュートリアルでは、1つ以上の列のデータ型を別のデータ型に変換する方法について学習します。メソッドDataFrame.astype()を使用します メソッド。

Python、Pandas、またはNumpyから任意のデータ型を渡す必要があります 列要素のデータ型を変更します。選択した列の辞書を提供して、特定の列要素のデータ型を変更することもできます。コード付きの例を見てみましょう。

# importing the pandas library
import pandas as pd
# creating a DataFrame
data_frame = pd.DataFrame({'No': [1, 2, 3], 'Name': ['Tutorialspoint', 'Mohit', 'Sharma'], 'Age': [25, 32, 21]})
# we will change the data type of all columns to str
data_frame = data_frame.astype(str)
# checking the data types using data_frame.dtypes method
print(data_frame.dtypes)

出力

すべての列データ型がstrオブジェクトに変更されました。上記のプログラムを実行すると、次の結果が得られます。

No     object
Name   object
Age    object
dtype: object

それでは、Age列のデータ型をintからstrに変更してみましょう。列名と目的のデータ型を指定する辞書を作成する必要があります。

# importing the pandas library
import pandas as pd
# creating a DataFrame
data_frame = pd.DataFrame({'No': [1, 2, 3], 'Name': ['Tutorialspoint', 'Mohit', 'Sharma'], 'Age': [25, 32, 21]})
# creating a dictionary with column name and data type
data_types_dict = {'Age': str}
# we will change the data type of Age column to str by giving the dict to the astype method
data_frame = data_frame.astype(data_types_dict)
# checking the data types using data_frame.dtypes method
print(data_frame.dtypes)

出力

出力が表示されている場合は、年齢のみ 列のデータ型がintからstrに変更されました。以下の結果を参照してください。

No      int64
Name   object
Age    object
dtype: object

結論

チュートリアルに従うのが難しい場合は、コメントセクションでそのことを伝えてください。


  1. Python-PandasDataFrameの散布図を描画します

    散布図は、データの視覚化手法です。 plot.scatter()を使用して、散布図をプロットします。まず、必要なライブラリをインポートしましょう- チームレコードにデータがあります。 PandasDataFrameに設定します- data = [["Australia", 2500],["Bangladesh", 1000],["England", 2000],["India", 3000],["Srilanka", 1500]] dataFrame = pd.DataFrame(data,

  2. Python Pandas-DataFrameに複数のデータ列をプロットしますか?

    複数の列をプロットするには、棒グラフをプロットします。 plot()を使用します メソッドと種類を設定します バーへのパラメータ 棒グラフ用。まず、必要なライブラリをインポートしましょう- import pandas as pd import matplotlib.pyplot as mp 以下は、チームレコードのデータです- data = [["Australia", 2500, 2021],["Bangladesh", 1000, 2021],["England", 2000, 2021],["India"