标签: counter

使用Python/Boto更新DynamoDB原子计数器

我正在尝试使用Python Boto 2.3.0更新原子计数计数器,但是找不到该操作的文档.

似乎没有直接接口,所以我尝试使用layer1接口进行"原始"更新,但我甚至无法完成简单的更新.

我尝试了以下变化,但都没有运气

dynoConn.update_item(INFLUENCER_DATA_TABLE, 
                     {'HashKeyElement': "9f08b4f5-d25a-4950-a948-0381c34aed1c"}, 
                     {'new': {'Value': {'N':"1"}, 'Action': "ADD"}})    

dynoConn.update_item('influencer_data', 
                     {'HashKeyElement': "9f08b4f5-d25a-4950-a948-0381c34aed1c"}, 
                     {'new': {'S' :'hello'}})                                 

dynoConn.update_item("influencer_data", 
                     {"HashKeyElement": "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
                     {"AttributesToPut" : {"new": {"S" :"hello"}}})      
Run Code Online (Sandbox Code Playgroud)

它们都会产生相同的错误:

  File "/usr/local/lib/python2.6/dist-packages/boto-2.3.0-py2.6.egg/boto/dynamodb/layer1.py", line 164, in _retry_handler
    data)
boto.exception.DynamoDBResponseError: DynamoDBResponseError: 400 Bad Request
{u'Message': u'Expected null', u'__type': u'com.amazon.coral.service#SerializationException'}
Run Code Online (Sandbox Code Playgroud)

我还在这里调查了API文档,但它们非常简洁.

我做了很多搜索和摆弄,我唯一剩下的就是使用PHP API并深入研究代码以找到它"格式化"JSON主体的位置,但这有点痛苦.请救我脱离这种痛苦!

python counter atomic boto amazon-dynamodb

9
推荐指数
2
解决办法
6235
查看次数

c ++中的静态计数器

我正在尝试创建一个Data类,其对象每个都拥有唯一的ID.

我希望第一个对象的ID为1,第二个为2,等等.我必须使用a static int,但所有对象都具有相同的ID,而不是1,2,3 ......

这是Data班级:

class Data
{
private:
   static int ID;
public:
   Data(){
   ID++;
   }
};
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做,所以第一个ID将是1,第二个将是2,等等.?

c++ static counter class

9
推荐指数
2
解决办法
2万
查看次数

Collections模块中的计数器Python

我遇到了一个非常奇怪的问题.我正在尝试在集合模块中使用Counter函数.但是,我一直收到相同的错误消息

AttributeError: 'module' object has no attribute 'Counter'
Run Code Online (Sandbox Code Playgroud)

我之前尝试过使用它并且工作正常,但是现在出于某种原因,当我导入"集合"模块时,它的属性数量非常有限.

我试过了:

import collections   # when calling Counter I would then use collections.Counter()
import collections as collect # collect.Counter()
Run Code Online (Sandbox Code Playgroud)

对于这两个我一直得到属性错误.

我也试过了

from collections import Counter
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我得到:

ImportError: cannot import name Counter
Run Code Online (Sandbox Code Playgroud)

这些都在ipython界面和脚本中进行了测试(不导入任何其他内容,只是集合).

有任何想法吗?

collections counter python-2.6 python-import importerror

9
推荐指数
1
解决办法
2万
查看次数

有没有办法使collections.Counter(Python2.7)意识到它的输入列表是排序的?

问题

我一直在玩不同的方式(在Python 2.7中)从语料库或字符串列表中提取(单词,频率)元组列表,并比较它们的效率.据我所知,在正常情况下列表未排序的情况下,模块中的Counter方法collections优于我在其他地方提出或找到的任何方法,但它似乎没有太大的好处.预先排序的列表,我已经提出了在这种特殊情况下轻松击败它的方法.那么,简而言之,是否有任何内置的方法来告知Counter列表已经排序以进一步加快它的速度?

(下一部分是未分类的列表,其中Counter工作魔法;你可能想要在处理排序列表时跳到它失去魅力的那一端.)

未排序的输入列表

一种方法不起作用

天真的方法是使用sorted([(word, corpus.count(word)) for word in set(corpus)]),但一个可靠的,只要你的语料库是几千个条目你进入运行时的问题-这并不奇怪,因为你通过的n个字的完整列表运行男也曾多次,其中m为唯一单词的数量.

对列表+本地搜索进行排序

因此,我试图做之前,而不是我发现的Counter是确保所有的搜索都是严格的地方,首先分拣输入表(我也有删除的数字和标点符号和所有条目转换为小写,以避免像"富"重复, 'Foo'和'foo:').

#Natural Language Toolkit, for access to corpus; any other source for a long text will do, though.
import nltk 

# nltk corpora come as a class of their own, as I udnerstand it presenting to the
# outside as a unique list but underlyingly represented as several lists, with no more
# than one ever …
Run Code Online (Sandbox Code Playgroud)

python performance counter python-2.7

9
推荐指数
2
解决办法
1891
查看次数

是否支持Cassandra计数器列系列的TTL?

Cassandra是否支持Counter列族的TTL?

具体来说,我们使用Hector作为Cassandra的客户端,我没有找到任何接收TTL作为参数的API.至少HFactory.createCounterColumn没有TTL参数.

counter ttl cassandra hector

9
推荐指数
1
解决办法
2995
查看次数

Python - 从映射,非整数值创建Counter()

考虑从映射初始化的基本计数器:

dict_1 = {'a': 1, 'b': 2, 'c': 3}
count_1 = Counter(dict_1)
print count_1

>>> Counter({'c': 3, 'b': 2, 'a': 1})
Run Code Online (Sandbox Code Playgroud)

一切都有道理.但Counter也允许我从一个非整数作为键和值的字典初始化.例如,

dict_2 = {'a': 'apple', 'b': 'banana', 'c': 'cheese'}
count_2 = Counter(dict_2)
print count_2

>>> Counter({'c': 'cheese', 'b': 'banana', 'a': 'apple'})
Run Code Online (Sandbox Code Playgroud)

上面编写的代码是Python 2.7,但我也在Python 3.5上测试过,得到了相同的结果.这似乎违反了计数器的最基本规则,其中"元素存储为字典键,其计数存储为字典值".计数器应该允许不是整数的值吗?它不应该抛出错误或什么?什么解释了这种行为?

python counter

9
推荐指数
1
解决办法
631
查看次数

是否有一种简单的方法可以获得单词中重复字符的数量?

我想知道一个单词中有多少个字符重复.重复必须是连续的.

例如,输入"loooooveee"的方法应该返回6('o'的4次,'e'的2次).

我正在尝试实现字符串级别的功能,我可以这样做但是,有一种简单的方法可以做到这一点吗?正则表达式,还是其他一些东西?

到目前为止我试过这个:

__PRE__

它以"loooooveee"返回8.

python regex string counter

9
推荐指数
1
解决办法
559
查看次数

列出元素的计数器

这里是Python的新手。

我正在寻找一种创建列表(输出)的简单方法,该方法在保留索引(?)的同时返回另一个目标列表(MyList)的元素计数。

这就是我想要得到的:

MyList = ["a", "b", "c", "c", "a", "c"]
Output = [ 2 ,  1 ,  3 ,  3 ,  2 ,  3 ]
Run Code Online (Sandbox Code Playgroud)

我找到了解决类似问题的方法。计算列表中每个元素的出现次数。

In  : Counter(MyList)
Out : Counter({'a': 2, 'b': 1, 'c': 3})
Run Code Online (Sandbox Code Playgroud)

但是,这将返回一个不保留索引的Counter对象。

我假设给定了计数器中的键,我可以构造所需的输出,但是我不确定如何进行操作。

额外的信息,我在脚本中导入了熊猫,而MyList实际上是熊猫数据框中的一列。

python counter list python-3.x pandas

9
推荐指数
3
解决办法
150
查看次数

Prometheus 来源的时间序列:如何将空值设置为零?

使用 Docker Grafana 8.1.5。使用时间序列图,我将一个Prometheus Counter源(有一个label)绘制为time series(按标签),并且需要将所有 null/缺失值填充为零

这是应用于源的查询Prometheus counter,绘制标签code

my_metric{code!=""}
Run Code Online (Sandbox Code Playgroud)

图形显示有效(只需查看每个标签变体的当前计数器值,以及所选时间范围内的差异),但新的 Grafanatime series graph缺少Graph (old)下的选项Display > Stacking and null value > null value: null as zero,因此现在在出现空值。

不幸的是,我无法使用Graph (old)图表,因为我需要图例值difference,该图例值仅在新图表中可用time series

我尝试添加or on() vector(0)到查询的末尾,但条件不会应用于每个标签变体的数据系列,而是添加一个全部填充零的新数据系列...

感谢您的任何建议!

counter grafana prometheus

9
推荐指数
2
解决办法
3万
查看次数

计算网站上文件下载的最佳方式

令人惊讶的是,找到这个问题的简单,简洁的答案是多么困难:

  1. 我的网站上有一个文件foo.zip
  2. 我该怎么做才能找出有多少人访问过这个文件?
  3. 如有必要,我可以使用Tomcat调用

更新:如果你建议写一个脚本,你能指点一个体面的吗?

counter

8
推荐指数
3
解决办法
1万
查看次数