Ste*_*one 3 python boolean pandas
我正在考虑熊猫数据框。我想找到一种创建第二个Dataframe的有效方法。
import pandas as pd
data = {"column":[0,1,2,0,1,2,0]}
df = pd.DataFrame(data)
Run Code Online (Sandbox Code Playgroud)
column
0
1
2
0
1
2
0
Run Code Online (Sandbox Code Playgroud)
column0 column1 column2
true false false
false true false
false false true
true false false
false true false
false false true
true false false
Run Code Online (Sandbox Code Playgroud)
这是一个get_dummies问题,但您还需要指定dtype=bool以获取布尔列:
pd.get_dummies(df['column'], dtype=bool)
0 1 2
0 True False False
1 False True False
2 False False True
3 True False False
4 False True False
5 False False True
6 True False False
pd.get_dummies(df['column'], dtype=bool).dtypes
0 bool
1 bool
2 bool
dtype: object
Run Code Online (Sandbox Code Playgroud)
# carbon copy of expected output
dummies = pd.get_dummies(df['column'], dtype=bool)
dummies[:] = np.where(pd.get_dummies(df['column'], dtype=bool), 'true', 'false')
dummies.add_prefix('column')
column0 column1 column2
0 true false false
1 false true false
2 false false true
3 true false false
4 false true false
5 false false true
6 true false false
Run Code Online (Sandbox Code Playgroud)