我在为下面的案子寻找解决办法:
当df只包含一个维度时,如何透视df,使col值成为列
以及如何继续,以便在由这些行生成的每列中的结果值为0或1,具体取决于它们在上一列中的出现情况
更容易说明。 所以从这种数据框架来看:
df =
DATA
cat1
dog1
cat2
dog2
cat3
dog3
...
对于这种数据帧:
df =
Animal cat1 dog1 cat2 dog2 cat3 dog3 ...
cat1 1 0 0 0 0 0 ...
dog1 0 1 0 0 0 0 ...
cat2 0 0 1 0 0 0 ...
dog2 0 0 0 1 0 0 ...
cat3 0 0 0 0 1 0 ...
dog3 0 0 0 0 0 1 ...
...
cat1 1 0 0 0 0 0 ...
dog1 0 1 0 0 0 0 ...
首先,我尝试收集所有唯一的值,然后我将其重塑为pd.DataFrame
,因为它是一个np数组。然后我试着用pivot。我知道它应该有'index'、'column'和'values'这样的参数,但在我的例子中,我只有一个维度(只有一列)
to_reschape = df.Animal.unique()
type(to_reschape)
dataset = pd.DataFrame(to_reschape)
dataset.pivot()
KeyError: None
您可以使用以下命令:
其中df
使用
输出:
相关问题 更多 >
编程相关推荐