我有一个看起来像这样的数据集
data = {'doc_ID':['Monday', 'Tuesday', 'Wednesday'], 'attachmentCount':[3,0,2], 'open':['TRUE','TRUE','FALSE']}
df = pd.DataFrame(data)
df
doc_ID attachmentCount open
0 Monday 3 TRUE
1 Tuesday 0 TRUE
2 Wednesday 2 FALSE
我想通过为介于1和最大“attachmentCount”之间的每个整数插入一行来扩展数据集。所以,它应该是这样的:
doc_ID attachmentCount open
0 Monday 1 TRUE
1 Monday 2 TRUE
2 Monday 3 TRUE
3 Tuesday 0 TRUE
4 Wednesday 1 FALSE
5 Wednesday 2 FALSE
我试过一些不同的东西,它们都是非常不正确的,不值得在这里发布。有人有什么建议吗?多谢各位
我不知道,但是在纯python中,下面的代码给出了您需要的输出
解释代码:
a
是数据集x
是数据集的每一行因此,在内部List Comprehension,
range(1,x[2]+1)+[x[2]])
中,是从1到attachmentCount的所有整数,以及attachmentCount是什么。这是必需的,因为attachmentCount可以小于1,就像您的案例中的0一样。这将转换为一个集合以删除重复项最里面的部分只是用新创建的值集的每个元素替换attachmentCount
相关问题 更多 >
编程相关推荐