Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 对系列中的特定值进行计数_Python_Pandas - Fatal编程技术网

Python 对系列中的特定值进行计数

Python 对系列中的特定值进行计数,python,pandas,Python,Pandas,我有一个python的熊猫系列。 是否有一种函数/简单的方法来构造一个包含给定值的出现次数的序列 为了演示,假设我有以下系列:1,3,1,5,10。 我想从以下列表中计算每个值的外观数:[1、2、3、4、5、6、7、8、9、10]。 应该返回的序列是2,0,0,1,0,1,0,0,0,0,1我们做数值计数+重新索引 使用numpy.bincount 带地图: s = pd.Series([1, 3, 1, 5, 10]) inp_list = [1, 2, 3, 4, 5, 6, 7, 8, 9

我有一个python的熊猫系列。 是否有一种函数/简单的方法来构造一个包含给定值的出现次数的序列

为了演示,假设我有以下系列:1,3,1,5,10。 我想从以下列表中计算每个值的外观数:[1、2、3、4、5、6、7、8、9、10]。 应该返回的序列是2,0,0,1,0,1,0,0,0,0,1

我们做数值计数+重新索引

使用numpy.bincount

带地图:

s = pd.Series([1, 3, 1, 5, 10])
inp_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

pd.Series(inp_list).map(s.value_counts()).fillna(0).astype(int).tolist()
或者列出comp和get

import numpy as np
l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
s = pd.Series([1, 3, 1, 5, 10])

out = list(np.bincount(s)[[l]])
out
[2, 0, 1, 0, 1, 0, 0, 0, 0, 1]
s = pd.Series([1, 3, 1, 5, 10])
inp_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

pd.Series(inp_list).map(s.value_counts()).fillna(0).astype(int).tolist()
c = s.value_counts()
[c.get(i,0) for i in inp_list]
#or [*map(lambda x: c.get(x,0),inp_list)]
[2, 0, 1, 0, 1, 0, 0, 0, 0, 1]