コード:
import numpy as np
import pandas as pd
""" create some test-data """
random_data = np.random.random([3, 3])
random_data[0,0] = 0.0
random_data[1,2] = 0.0
df = pd.DataFrame(random_data,
columns=['A', 'B', 'C'], index=['first', 'second', 'third'])
print(df)
""" binarize """
threshold = lambda x: x > 0
df_ = df.apply(threshold).astype(int)
print(df_)
出力:
A B C
first 0.000000 0.610263 0.301024
second 0.728070 0.229802 0.000000
third 0.243811 0.335131 0.863908
A B C
first 0 1 1
second 1 1 0
third 1 1 1
備考:
- get_dummies()列ごとにそれぞれ一意の値を分析しに(それぞれのユニークな値のために)新しい列が導入されましたこの値がアクティブな場合はマーク
- =列Aに20の一意のval UEは、20個の新しい列は、1つの列が真である場合には、他の人がどんなゼロエントリのためのゼロ—と
False
ではありません何のためにTrue
になりますブール値にキャスト