【发布时间】:2015-11-11 18:29:03
【问题描述】:
我正在使用 Python 来制作列表。应该很容易!我不知道我为什么要为此苦苦挣扎。
我有一些按日期计算的数据。有这样一个日期列:
Created on
5/1/2015
5/1/2015
6/1/2015
6/1/2015
7/1/2015
8/1/2015
8/1/2015
8/1/2015
在这种情况下,将在 5 月创建 2 个单位,在 6 月创建 2 个单位,在 7 月创建 1 个单位,在 8 月创建 3 个单位。
我想在 4 月开始的列表中反映这一点([4 月计数、5 月计数、6 月计数等...]):
NumberofUnits = [0, 2, 3, 1, 3, 0, 0, 0, 0, 0, 0, 0]
我有一份不错的月份清单
monthnumbers
Out[69]: [8, 5, 6, 7]
我还有一个unitcounts = [2, 3, 1, 3] 列表,我使用 value_counts 得到了这个。
所以这是制作一个零列表并用 unitcount 列表替换部分的问题,对吧?
由于某种原因,我所有的尝试要么没有列出一个列表,要么没有列出一个包含一个零的列表。
NumberofUnits = [0]*12
for i in range(0,len(monthnumbers)):
if **monthnumbers[i] == (i+4):** **This part is wrong**
NumberofUnits.append(unitcounts[i])
s = slice(0,i+1)
我也试过
NumberofUnits = []
for i in range(0, 12):
if len(NumberofUnits) > i:
unitcounts[i:]+unitcounts[:i]
NumberofUnits.append(unitcounts[i])
s = slice(0,i+1)
else:
unitcounts.append(0)
但这并不能说明在这一轮中我的数据是从 5 月开始的,所以我需要在第一个插槽中输入一个零。
【问题讨论】:
-
5 月份只有两个条目。
标签: python list for-loop count append