Python 两个分类变量的笛卡尔积
让一个数据帧在其他两个分类变量中,一个有Python 两个分类变量的笛卡尔积,python,python-3.x,pandas,matplotlib,Python,Python 3.x,Pandas,Matplotlib,让一个数据帧在其他两个分类变量中,一个有儿童-年轻-成熟-老年类,另一个有男性-女性类 我怎么能有系统地建立一个新的专栏“Sex\u Age”,其中包括男童、女童、男童、女童、男童、女童、男童、女童、男童、女童 在两种情况下: 我不希望这个新的分类变量真的添加到我的数据帧中,但我只想使用它的概念,比如说,绘制有八个点的抖动图 我想把这个新的分类变量添加到我的数据框中 在案例1中:我想要抖动图的'HairLength'由8束组成,对应于8个案例:男性儿童,女性成熟我对新专栏不感兴趣 案例2:我
儿童-年轻-成熟-老年
类,另一个有男性-女性
类
我怎么能有系统地建立一个新的专栏“Sex\u Age”
,其中包括男童、女童、男童、女童、男童、女童、男童、女童、男童、女童
在两种情况下:
抖动图的'HairLength'
由8束组成,对应于8个案例:男性儿童,女性成熟代码>我对新专栏不感兴趣
案例2:我感兴趣的是在我的日期框中添加一个'Sex\u Age'
列,该列包含真实数据,如男童等。我的示例数据框是:
df = pd.DataFrame({'A':['male', 'female', 'male'], 'B':['one', 'two', 'three']})
因此,您可以使用函数get_dummies from pandas:
pd.get_dummies(df, columns=['A', 'B'])
输出将是:
A_female A_male B_one B_three B_two
0 0 1 1 0 0
1 1 0 0 0 1
2 0 1 0 1 0
你可以用它来画图,比如(但它不是抖动图):
或通过以下方式连接到DataFrameWriter:
df = df.join(pd.get_dummies(df, columns=['A', 'B']))
请分享一份。另外,请您澄清:我不希望这个新的分类变量真的添加到我的数据框中
,但是我想将这个新的分类变量添加到我的数据框中
我按照您所说的@yatu做了
pd.get_dummies(df, columns=['A', 'B']).plot(kind='bar')
df = df.join(pd.get_dummies(df, columns=['A', 'B']))