我有一种情况,我想从下面提到的多个数据帧(df1,df2,df3和df4)中分离分类和数字特征,我想将它们存储在两个不同的数据帧中,名称为"one_answers";Cat"。我正在寻找一个循环到这些多个数据帧的过程,并给出我正在寻找的输出,如下所述。这应该完全可以使用pandas的dtypes功能来识别一个col是分类的还是数字的
输入数据帧如下所示:df1:
Name1 Number1
ABC 123
DEF 234
XXX 456
df2:
Name2 Number2
ABCD 1232
DEFG 2342
XXXY 4562
df3:
Name3 Number3
AB 12
DE 23
XX 45
df4:
Name4 Number4
A 1
D 3
X 5
输出应该如下所示:
猫:
Name1 Name2 Name3 Name4
ABC ABCD AB A
DEF DEFG DE D
XXX XXXY XX X
和类似:<<strong>控制/strong>:
Number1 Number2 Number3 Number4
123 1232 12 1
234 2342 23 2
456 4562 45 5
如何做到这一点?
您可以使用pandas.DataFrame.select_dtypes
创建两个数据框架。
试试这个:
out = pd.concat([df1, df2, df3, df4], axis=1)
cat= out.select_dtypes(include="object") #or include="category"
cont= out.select_dtypes(include=np.number)
#输出:
print(cat)
Name1 Name2 Name3 Name4
0 ABC ABCD AB A
1 DEF DEFG DE D
2 XXX XXXY XX X
print(cont)
Number1 Number2 Number3 Number4
0 123 1232 12 1
1 234 2342 23 3
2 456 4562 45 5