この短いガイドでは、Pandas DataFrame でランダムな整数を生成する方法について説明します。
- シングルDataFrame列
- 複数DataFrame 列
また、これらの整数を浮動小数点数や文字列などのさまざまなデータ型に変換する方法も説明します。
単一のデータフレーム列にランダムな整数を生成する
以下は、単一の DataFrame 列の下にランダムな整数を生成するために使用できるテンプレートです。
import numpy as np
import pandas as pd
data = np.random.randint(lowest integer, highest integer, size=number of random integers)
df = pd.DataFrame(data, columns=["column name"])
print(df)
たとえば、次の情報に基づいてランダムな整数を生成したいとします。
- 最小の整数は 5 です (5 を含む)
- 最大の整数は30(含まない)です
- サイズは10です
次に、このコードを Python で適用します。
import numpy as np
import pandas as pd
data = np.random.randint(5, 30, size=10)
df = pd.DataFrame(data, columns=["random_numbers"])
print(df)
コードを実行すると、10 個のランダムな整数 (サイズ 10 で指定) が取得されます。

ランダムな整数を生成するときに、最小の整数 (上記のコードでは 5 など) が含まれる場合がありますが、最大の整数 (上記のコードでは 30 など) は除外されることに注意してください。
複数のデータフレーム列にランダムな整数を生成する
複数の DataFrame 列の下にランダムな整数を生成するテンプレートを次に示します。
import pandas as pd
data = np.random.randint(lowest integer, highest integer, size=(number of random integers per column, number of columns))
df = pd.DataFrame(
data, columns=["column name 1", "column name 2", "column name 3", ...]
)
print(df)
たとえば、ランダムな整数を含む 3 つの列を作成するには、以下のコードを適用できます。
import numpy as np
import pandas as pd
data = np.random.randint(5, 30, size=(10, 3))
df = pd.DataFrame(
data, columns=["random_numbers_1", "random_numbers_2", "random_numbers_3"]
)
print(df)
そして結果は次のとおりです。

データ型を確認する
コードの末尾に print(df.dtypes) を追加すると、Pandas DataFrame のデータ型を確認できます。
import numpy as np
import pandas as pd
data = np.random.randint(5, 30, size=(10, 3))
df = pd.DataFrame(
data, columns=["random_numbers_1", "random_numbers_2", "random_numbers_3"]
)
print(df)
print(df.dtypes)
ご覧のとおり、3 つの列のそれぞれのデータ型は整数です。

データ型をFloatに変換する
次のように astype(float) を適用して、整数を浮動小数点数に変換できます。
import numpy as np
import pandas as pd
data = np.random.randint(5, 30, size=(10, 3))
df = pd.DataFrame(
data, columns=["random_numbers_1", "random_numbers_2", "random_numbers_3"]
).astype(float)
print(df)
print(df.dtypes)
3 つの列それぞれのデータ型が float になっていることがわかります。

データ型を文字列に変換する
あるいは、astype(str) を使用して整数を文字列に変換することもできます。
import numpy as np
import pandas as pd
data = np.random.randint(5, 30, size=(10, 3))
df = pd.DataFrame(
data, columns=["random_numbers_1", "random_numbers_2", "random_numbers_3"]
).astype(str)
print(df)
print(df.dtypes)
これで、文字列を表す「object」が取得されます。






