使用熊猫在python中重塑CSV数据

时间:2019-04-19 05:15:56

标签: python pandas numpy

我的csv数据集为:

    5.1,3.5,1.4,0.2,Iris-setosa
    7.0,3.2,4.7,1.4,Iris-versicolor
    6.3,3.3,6.0,2.5,Iris-virginica
    4.9,3.0,1.4,0.2,Iris-setosa
    4.7,3.2,1.3,0.2,Iris-setosa
    4.4,2.9,1.4,0.2,Iris-setosa
    5.1,2.5,3.0,1.1,Iris-versicolor
    5.7,2.8,4.1,1.3,Iris-versicolor
    5.8,2.7,5.1,1.9,Iris-virginica
    7.1,3.0,5.9,2.1,Iris-virginica
    6.3,2.9,5.6,1.8,Iris-virginica

我想拥有它:

Iris-setosa,Iris-versicolor,Iris-virginica
5.1,3.5,1.4,
7.0,3.2,4.7,
6.3,3.3,6.0,
4.9,3.0,1.4,
4.7,3.2,1.3

我搜索了很多答案,例如使用pd.pivot,但没有得到想要的输出。当我尝试提供一些索引A来进行旋转时,它会阻止“索引具有重复项”。 如果答案包含.pivot函数,那么您能解释一下实际的索引,列和值是什么。

1 个答案:

答案 0 :(得分:2)

我认为您需要按位置过滤列-前3个由DataFrame.iloc过滤,必要时按list设置列名称:

df = df.iloc[:, :3]
df.columns = ['Iris-setosa','Iris-versicolor','Iris-virginica']
print (df)
    Iris-setosa  Iris-versicolor  Iris-virginica
0           5.1              3.5             1.4
1           7.0              3.2             4.7
2           6.3              3.3             6.0
3           4.9              3.0             1.4
4           4.7              3.2             1.3
5           4.4              2.9             1.4
6           5.1              2.5             3.0
7           5.7              2.8             4.1
8           5.8              2.7             5.1
9           7.1              3.0             5.9
10          6.3              2.9             5.6