使用Excel的Python,计算单元格

时间:2018-01-30 20:05:48

标签: python excel pandas openpyxl

我有一张excel表,里面有30000行。我想用例如#1对前5行进行分类。 #2的第5行,依此类推,直到达到30000行。我怎么能用Excel表格做到这一点。

enter image description here

lst1 = []
classifier = 0
while classifierOne <= 30000:
    if classifier <= 5:
        lst1.append(1)
    if classifier > 5 and classifier<=10:
        lst1.append(2)
      ::
      ::
      ::
      ::
      ::
      ::
      ::
      ::
    classifierOne +=1
# do this until I reach 30000 which is not an efficient way to do.

print(lst1, classifierOne)

df = DataFrame({'':lst1})
df.to_excel('list.xlsx', sheet_name='sheet1', index=False)

我尝试了很多方法但我找不到有效的方法来做到这一点。感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

你可以使用平面双列表理解轻松生成这样的列表,重复每个数字五次:

n = 5
lst1 = [i for i in range(1,30000//n+1) for _ in range(n)]

发出30000/5个数字(6000),每个重复5次(所以30000行)。

结果:

[1,
 1,
 1,
 1,
 1,
 2,
 2,
 2,
 2,
 2,
 3,
 3,
 3,
 3,
 3,
 4,
 4,
 4,
 4,
 4,
 5,
 5,
 5,
 5,
 5,
 etc...