Python 从矩阵中检索特定值
我有这样的数据:Python 从矩阵中检索特定值,python,Python,我有这样的数据: array = [[1, 2019, done] [1,2019 , undone] ... [1, 2018, done] [1, nan, done] [2, 2017, undone]] 我想检索所有只有一次值的日期,以及列表中每个日期的“完成”数 我试图得到我想要的分析数据的结果 date, counter= [], [] for i in range (len(array)): if array[i][1] not in date and array[i
array =
[[1, 2019, done]
[1,2019 , undone]
...
[1, 2018, done]
[1, nan, done]
[2, 2017, undone]]
我想检索所有只有一次值的日期,以及列表中每个日期的“完成”数
我试图得到我想要的分析数据的结果
date, counter= [], []
for i in range (len(array)):
if array[i][1] not in date and array[i][1]!="":
date.append(array[i][1])
for j in range(len(X)):
count = 0
for i in range(len(array)):
if X[j] == array[i][1] and array[i][2] == "done":
count +=1
counter.append(count)
我现在有一个重复值的日期列表,还有很多“nan”值
X=[201920192019,楠,楠,楠,2017…]
我想买点像那样的东西
日期=[201920182017…]
计数器=[200150100,…]我假设您有以下数据:
done=“done”
undone=“undone”
nan=“nan”
数组=[[1,2019,完成],
[2019年1月1日,未完成],
[2018年1月1日,完成],
[1,楠,完成],
[2017年2月2日,未完成]]
要仅选择具有年份的日期,do可以使用:
selection=[[m,y,f]表示数组中的m,y,f,如果y!=nan]
你会得到:
[[1,2019,'完成'],
[2019年1月,“撤销”],
[2018年1月,“完成”],
[2017年2月,“撤销”]]
要计算“完成”的次数,您可以使用:
groups=collections.Counter()
对于选择中的月份、年份和标志:
如果标志==完成:
组[(月、年)]+=1
你会得到:
计数器({(2019年1月1日):1,(2018年1日):1})
如果这是数据[[12019,完成],[2019年1月1日,完成],[2019年1月1日,结束],[1年,结束],[1年,结束]],预期输出是什么?