我有一个以逗号分隔的文件,第一列是格式为01/31/2010的日期,我想将其更改为纪元时间,以便文件"file.csv":
01/30/2010,1,"hi"
01/31/2010,3,"bye"
Run Code Online (Sandbox Code Playgroud)
将更改为"output.csv":
1264809600,1,"hi"
1264896000,3,"bye"
Run Code Online (Sandbox Code Playgroud)
我知道命令行日期-d"01/30/2010"+%s可以工作,但只能在一个日期,我需要将它提供给一个表,所以,有没有办法使用awk与一些功能():
cat file.csv | awk -F, 'print func($1)","$2","$3}'
Run Code Online (Sandbox Code Playgroud)
因为我真的不在乎我是怎么做的,或者,当字符串是mm/dd/yyyy时,如何将excel中的日期更改为纪元...
upsert的例子是:
curl -XPOST 'localhost:9200/test/type1/1/_update' -d '{
"script" : "ctx._source.counter += count",
"params" : {
"count" : 4
},
"upsert" : {
"counter" : 1
}
}'
Run Code Online (Sandbox Code Playgroud)
如果以前不存在该文档,则该方法有效.
假设我想更新不一定存在的字段,但文档存在.例如,该文档可能还没有计数器字段.
我该怎么做呢?
当客户端的处理量太大时,ElasticSearch 中的 map-reduce 相当于什么?是否有类似“流”之类的东西,以便客户端可以在输入数据时减少输出?
假设我需要在客户端进行连接或复杂的过滤,如果没有某种映射缩减方案,这种类型可能不适合内存。我不介意等待很长时间才能得到响应,但我不想破坏机器(客户端和/或服务器)。
我该怎么办?
示例,映射:
{"book":{"properties":{
"title":{"type":"string", "index":"analyzed"},
"author":{"type":"string", "index":"analyzed"},
}
{"character":{"properties":{
"book_id":{"type":"string", "index":"not_analyzed"},
"name":{"type":"string", "index":"analyzed"},
"age":{"type":"integer"},
"catch-phrase":{"type":"string", "index":"analyzed"},
}
Run Code Online (Sandbox Code Playgroud)
假设我想找到所有至少有 M 个字符且口号不超过 N 的书籍(其中 N 是客户端提供的参数)
所以它会是get_books_with_short_phrases(M,N)
我当然可以将“短语长度”等字段添加到“字符”类型中,但我们假设“流行语”的处理可能一直在变化。
我想将“字符”和“书籍”流式传输到客户端,检查每个客户端并输出一个键值,<book>-<character,len(phrase)>
然后将其进一步减少到<book>-<num_of_chars_with_short_phrase>
如果我将所有文档加载到客户端内存中,那可能是一场灾难。如果客户处理每本书并将其简化为 ak,v 可能会更好。
我是不是搞错了?
该解决方案是否以某种方式在服务器上运行脚本,以便执行映射缩减?
在文档中,某些类型,例如数字和日期,它指定 store 默认为 no。但是仍然可以从json中检索该字段。
它令人困惑。这是否意味着_source?
有没有办法根本不存储字段,而只对其进行索引和搜索?
我正在尝试优化我的弹性搜索方案.
我有一个字段是一个URL - 我不想查询或过滤它,只是检索它.
我的理解是,定义为"index":"no"
未编入索引但仍存储在索引中的字段.(参见http://www.slideshare.net/nitin_stephens/lucene-basics中的幻灯片5 )这应该与Lucene UnIndexed匹配,对吧?
这让我感到困惑,有没有办法存储一些字段,没有它们占用更多的存储而不仅仅是它们的内容,而且不会妨碍其他字段的索引?
我错过了什么?
hist()
在R和设置中使用时,freq=FALSE
我应该得到密度.但是,我没有.我得到的其他数字比它只显示计数时要多.我还需要规范化.
例如:
> h = hist(c(1,2,1,3,1,4,5,4,5,8,2,4,1,7,6,10,7,4,3,7,3,5), freq=FALSE)
> h$density
0.13636364 0.15909091 0.09090909 0.09090909 0.02272727
> sum(h$density)
[1] 0.5
> h$density/sum(h$density)
[1] 0.27272727 0.31818182 0.18181818 0.18181818 0.0454545
Run Code Online (Sandbox Code Playgroud) 尝试在PIL python库中执行以下操作时:
Image.open('Apple.gif').save('Apple.pgm')
Run Code Online (Sandbox Code Playgroud)
代码失败了:
Traceback (most recent call last):
File "/home/eran/.eclipse/org.eclipse.platform_3.7.0_155965261/plugins/org.python.pydev_2.6.0.2012062818/pysrc/pydevd_comm.py", line 765, in doIt
result = pydevd_vars.evaluateExpression(self.thread_id, self.frame_id, self.expression, self.doExec)
File "/home/eran/.eclipse/org.eclipse.platform_3.7.0_155965261/plugins/org.python.pydev_2.6.0.2012062818/pysrc/pydevd_vars.py", line 376, in evaluateExpression
result = eval(compiled, updated_globals, frame.f_locals)
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/PIL/Image.py", line 1439, in save
save_handler(self, fp, filename)
File "/usr/lib/python2.7/dist-packages/PIL/PpmImagePlugin.py", line 114, in _save
raise IOError, "cannot write mode %s as PPM" % im.mode
IOError: cannot write mode P as PPM
Run Code Online (Sandbox Code Playgroud)
代码可以正常转换为BMP,但JPG也失败了.奇怪的是,一个不同的文件(JPG到PGM),工作正常.
其他格式转换.那是:
Image.open('Apple.gif').save('Apple.bmp')
Run Code Online (Sandbox Code Playgroud)
作品.
知道为什么吗?
我希望能够使用OpenCV计算python中的LBP描述符.根据这个,我需要重新编译的OpenCV.
我更改了elbp()
函数opencv-2.4.6.1/modules/contrib/src/facerec.cpp
,因此它们不再是statisc.现在我必须在HFile中声明它们(假设我创建了elbp.hpp
,或者我应该将它添加到现有文件中?):
// This is a header file created to expose the elbp (evaluate LBP) functions
#include "opencv2/core/core.hpp"
namespace cv {
Mat elbp(InputArray src, int radius, int neighbors);
Mat elbp(InputArray src, OutputArray dst, int radius, int neighbors);
Mat spatial_histogram(InputArray _src, int numPatterns, int grid_x, int grid_y, bool /*normed*/);
};
Run Code Online (Sandbox Code Playgroud)
为了编译OpenCV,我按照这里的说明,创建了cv2.so共享对象.
我的问题是,如何创建python"包装器"(如果我使用正确的单词)能够从python调用elbp()函数?我觉得我错过了这里至关重要的一步.
例如,cv2.HogDescriptor()函数存在于python中,我想类似地公开LBP描述符.
有没有一种有效的方法来了解图像文件的大小(高度,重量,通道),而无需将其实际加载到python中?
琐碎的方式是:
img = cv2.imread('a.jpg')
print img.shape
Run Code Online (Sandbox Code Playgroud)
但这会浪费CPU(和内存),因为我不需要图像本身.
最好举例说明:
我想通过col1
和聚合数据帧col2
,对结果求和,col3
并对结果求col4
平均col5
如果我只想对 col3-5 进行总结,我会使用 df.groupby(['col1','col2']).sum()