Python中的分割和连续值

问题描述 投票:0回答:1

我有一个非常奇怪的数据格式的csv文件。月份以1和0分别为true或false分隔在列中,工作日期以逗号分隔的单个字符串表示。

我需要将此更改为正常的日期类型,例如“日/月”,以便我进行一些分析。

enter image description here

我尝试使用带有熔化方法的熊猫来分隔列

dfs.melt(id_vars=['ID_INVENTORY','JOBISN','DAYS_JOB'], value_vars=['JAN','FEB','MAR','APR','MAY','JUN','JUL','AUG','SEP','OCT','NOV','DECE'])

之后我得到了这个结果

enter image description here

但是熊猫没有分裂方法,我真的不知道该怎么做,但是我跌倒了,我走在正确的道路xD上

下面的样本数据(用“;”分隔)

JAN;FEB;MAR;APR;MAY;JUN;JUL;AUG;SEP;OCT;NOV;DECE;DAYS_JOB
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
1;1;1;1;1;1;1;1;1;1;1;1;1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
python pandas csv dataframe datareader
1个回答
0
投票

尝试以下:

df = df.explode('DAYS_JOB')
© www.soinside.com 2019 - 2024. All rights reserved.