我知道仅通过查看数据就无法确定任何字符串形式数据的字符编码.这不是我的问题.
我的问题是:PDF文件中是否有一个字段,按照惯例,指定了编码方案(例如:UTF-8)?这与<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">HTML中大致类似.
非常感谢,Blz
GORM 的官方文档演示了一种可以测试记录是否存在的方法,即:
user := User{Name: "Jinzhu", Age: 18, Birthday: time.Now()}
// returns true if record hasn’t been saved (primary key `Id` is blank)
db.NewRecord(user) // => true
db.Create(&user)
// will return false after `user` created
db.NewRecord(user) // => false
Run Code Online (Sandbox Code Playgroud)
这可用于间接测试记录创建中的错误,但在发生故障时不报告任何有用信息.
检查了源代码后db.Create,似乎有某种堆栈帧检查在继续之前检查错误,这意味着事务错误将无提示失败:
func Create(scope *Scope) {
defer scope.Trace(NowFunc())
if !scope.HasError() {
// actually perform the transaction
}
}
Run Code Online (Sandbox Code Playgroud)
我正在努力完成一项相当简单的任务.我有一个浮点矢量,我想用两个高斯核来拟合高斯混合模型:
from sklearn.mixture import GMM
gmm = GMM(n_components=2)
gmm.fit(values) # values is numpy vector of floats
Run Code Online (Sandbox Code Playgroud)
我现在想绘制我创建的混合模型的概率密度函数,但我似乎无法找到有关如何执行此操作的任何文档.我该怎么办?
编辑:
这是我拟合的数据向量.以下是我如何做事的更详细的例子:
from sklearn.mixture import GMM
from matplotlib.pyplot import *
import numpy as np
try:
import cPickle as pickle
except:
import pickle
with open('/path/to/kde.pickle') as f: # open the data file provided above
kde = pickle.load(f)
gmm = GMM(n_components=2)
gmm.fit(kde)
x = np.linspace(np.min(kde), np.max(kde), len(kde))
# Plot the data to which the GMM is being fitted
figure()
plot(x, kde, color='blue')
Run Code Online (Sandbox Code Playgroud)

# My …Run Code Online (Sandbox Code Playgroud) 我需要测试一个调用的实例方法open.在第一个测试用例中,我设置mock.mock_open为返回一个字符串,如预期的那样.这非常有效.
但是,我还需要测试IOError从该函数抛出a 的情况.如何mock.mock_open引发任意异常?
到目前为止这是我的方法:
@mock.patch.object(somemodule, 'generateDefaultKey')
def test_load_privatekey(self, genkey)
mo = mock.mock_open(read_data=self.key)
mo.side_effect = IOError
with mock.patch('__main__.open', mo, create=True):
self.controller.loadPrivkey()
self.assertTrue(genkey.called, 'Key failed to regenerate')
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用PDFMiner python绑定从大量PDF中提取文本.我写的模块适用于许多PDF,但是对于一部分PDF,我得到了一些有些神秘的错误:
ipython堆栈跟踪:
/usr/lib/python2.7/dist-packages/pdfminer/pdfparser.pyc in set_parser(self, parser)
331 break
332 else:
--> 333 raise PDFSyntaxError('No /Root object! - Is this really a PDF?')
334 if self.catalog.get('Type') is not LITERAL_CATALOG:
335 if STRICT:
PDFSyntaxError: No /Root object! - Is this really a PDF?
Run Code Online (Sandbox Code Playgroud)
当然,我立即检查这些PDF是否已损坏,但它们可以被正确读取.
尽管没有根对象,有没有办法阅读这些PDF?我不太确定从哪里开始.
非常感谢!
编辑:
我尝试使用PyPDF试图获得一些差异诊断.堆栈跟踪如下:
In [50]: pdf = pyPdf.PdfFileReader(file(fail, "rb"))
---------------------------------------------------------------------------
PdfReadError Traceback (most recent call last)
/home/louist/Desktop/pdfs/indir/<ipython-input-50-b7171105c81f> in <module>()
----> 1 pdf = pyPdf.PdfFileReader(file(fail, "rb"))
/usr/lib/pymodules/python2.7/pyPdf/pdf.pyc in __init__(self, stream)
372 self.flattenedPages = None
373 self.resolvedObjects = …Run Code Online (Sandbox Code Playgroud) 我有一个格式很好的ipython笔记本,配有markdown单元格和诸如此类的东西.我想知道在导出到PDF文件方面我的选择是什么.
到目前为止,我一直在File > Print View使用chrome的"保存到文件"功能将结果页面打印为PDF.这在技术上有效,但它有一个主要的不便之处:我的数字,代码和降价单元通常被分页符分开.
有没有其他的解决方案可以让我有一个连续的PDF文件?
编辑: 我遇到了nbconvert,但当我不断收到"找不到文件"错误.有人跟nbconvert有什么运气吗?该文档声称支持导出为PDF,但是当我运行时nbconvert.py -f pdf,错误消息表明实际上并不支持PDF格式.
我正在尝试制作一种称为Gabor补丁的特殊光栅,其中的一个示例可以在本教程的底部找到,其代码我移植到python.
使用matplotlib的imshow函数,我获得了以下补丁.
虽然着色不同,但我怀疑这与matplotlib如何显示数值有关.在本质上,这图像是2D,100逐100像素阵列从含有值-1.0到1.0(含).如果有人想尝试操纵有问题的数组,我在这里将它保存为pickle对象.
我的问题如下:如何在确保满足以下条件的同时将此数组传输到pygame表面?
1.9.1release.出于某种莫名其妙的原因,我找不到1.9.2在我的操作系统上安装的方法(Ubuntu 13.04).在PIP上似乎没有PPA和pygame显然没有.非常感谢您提前,如果我能提供更多信息,请告诉我!
编辑
关于@ Veedrac的解决方案(与我自己非常相似),这是我在matplotlib中使用灰度色彩图时的补丁imshow.这就是我想要的:
from matplotlib.pyplot import *
import matplotlib.cm as cm
figure()
imshow(g, cm=cm.Greys_r)
show()
Run Code Online (Sandbox Code Playgroud)

Statsmodels的线性混合效果模型的文档声称
Statsmodels LME框架目前支持通过Wald检验的后估计推断和系数,轮廓似然分析,似然比检验和AIC的置信区间.[强调补充]
我已经注意到了这个MixedLM.loglike方法,但我似乎无法找到运行似然比检验的函数/方法.
有人可以指出我正确的方向吗?
使用下面的代码片段中,我试图从提取文本数据这个 PDF文件.
import pyPdf
def get_text(path):
# Load PDF into pyPDF
pdf = pyPdf.PdfFileReader(file(path, "rb"))
# Iterate pages
content = ""
for i in range(0, pdf.getNumPages()):
content += pdf.getPage(i).extractText() + "\n" # Extract text from page and add to content
# Collapse whitespace
content = " ".join(content.replace(u"\xa0", " ").strip().split())
return content
Run Code Online (Sandbox Code Playgroud)
然而,我获得的输出在大多数单词之间没有空格.这使得难以对文本执行自然语言处理(我的最终目标,这里).
此外,"手指"一词中的"fi"一直被解释为其他内容.这是相当有问题的,因为这篇论文是关于自发的手指运动......
有人知道为什么会这样吗?我甚至不知道从哪里开始!
我正在创建一个使用用户指定的格式重命名文件的类.这种格式将是一个简单的字符串,其str.format方法将被调用以填充空白.
事实证明,我的程序将需要提取大括号中包含的变量名称.例如,字符串可能包含{user},应该产生user.当然,单个字符串中会有几组大括号,我需要按照它们出现的顺序获取每个大括号的内容并将它们输出到列表中.
因此,"{foo}{bar}"应该屈服['foo', 'bar'].
我怀疑最简单的方法是使用re.split,但我对正则表达式一无所知.有人可以帮我吗?
提前致谢!
python ×7
pdf ×2
pypdf ×2
unicode ×2
go ×1
go-gorm ×1
matplotlib ×1
mocking ×1
numpy ×1
pdf-parsing ×1
pygame ×1
regex ×1
scikit-learn ×1
statsmodels ×1
unit-testing ×1
utf ×1