我发誓这应该是那么容易......为什么不呢?:(
实际上,我想组合同一个数组的两个部分来组成一个复杂的数组:
Data[:,:,:,0] , Data[:,:,:,1]
Run Code Online (Sandbox Code Playgroud)
这些不起作用:
x = np.complex(Data[:,:,:,0], Data[:,:,:,1])
x = complex(Data[:,:,:,0], Data[:,:,:,1])
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?numpy不喜欢在复数上执行数组函数吗?这是错误:
TypeError: only length-1 arrays can be converted to Python scalars
Run Code Online (Sandbox Code Playgroud) 很简单,我需要从多个PDF中删除文本(实际上非常多),以便在将内容粘贴到SQL数据库之前对其进行分析.
我发现了一些非常粗略的免费C#库,这些库有些工作(最好的是使用iTextSharp),但是有很多格式错误,有些字符是乱码的,而且很多时候有空格('')无处不在 - 里面的单词,在每个字母之间,它们的大块占据了几行,这看起来有点随意.
是否有任何简单的方法可以完全忽略(很可能!)或者是否有一项艰巨的任务涉及将提取的字节值可靠地转换为字母?
当然必须有办法做到这一点......我无法解决这个问题.
我有一个(9,4)数组,我想沿着第3轴重复4096次...所以它变得简单(9,4,4096),每个来自9,4阵列的值只重复4096次沿着新轴行进.
如果我可疑的3D图表有意义(对角线是z轴)
4| /off to 4096
3| /
2| /
1|/_ _ _ _ _ _ _ _ _
1 2 3 4 5 6 7 8 9
Run Code Online (Sandbox Code Playgroud)
干杯
编辑:只是为了澄清,这里强调的是(9,4)数组被重新设置为新轴的4096'行'.想象一个横截面 - 每个原始(9,4)阵列是4096长长方体中的一个.
我几乎不了解Matlab,需要将一些解析例程转换为Python.它们适用于大型文件,它们本身被划分为"块",并且我从文件顶部的校验和开始就很困难.
Matlab到底发生了什么?
status = fseek(fid, 0, 'cof');
fposition = ftell(fid);
disp(' ');
disp(['** Block ',num2str(iBlock),' File Position = ',int2str(fposition)]);
% ----------------- Block Start ------------------ %
[A, count] = fread(fid, 3, 'uint32');
if(count == 3)
magic_l = A(1);
magic_h = A(2);
block_length = A(3);
else
if(fposition == file_length)
disp(['** End of file OK']);
else
disp(['** Cannot read block start magic ! Note File Length = ',num2str(file_length)]);
end
ok = 0;
break;
end
Run Code Online (Sandbox Code Playgroud)
fid是当前正在查看的文件iBlock是一个计数器,你在文件中"阻止"它
magic_l和magic_h稍后与校验和有关,这里是代码(直接来自上面的代码):
disp(sprintf(' Magic_L = %08X, Magic_H = %08X, …Run Code Online (Sandbox Code Playgroud) 假设我有一个12GB的二进制文件,我想从中间切出8GB.我知道我想要切入的位置指数.
我该怎么做呢?显然12GB不适合内存,这很好,但8GB也不会......我认为这很好,但如果你以大块的形式出现二进制似乎并不喜欢它!我一次向一个新的二进制文件追加10MB,并且新文件中每个10MB块的边缘都有不连续性.
是否有一种Pythonic方式可以轻松完成此操作?
所以我代表一个令牌环网络(在SimPy中进行模拟),我是matplotlib的新手,但有人告诉我,在视觉上表示我的模拟真的很好.
所以我用Google搜索并找出如何绘制形状和线条 - 分别使用add_patch和add_line到轴(我相信).所以现在我有这个输出绝对没问题:
(无法发布图片!!) http://img137.imageshack.us/img137/7822/screenshot20100121at120.png
但是我使用pylab.show()函数得到这个,我想我想要的是使用pylab.plot()函数来实现这一点,这样我就可以在我使用pylab.draw()进行模拟过程时更新它之后.
我的代码如下:
plab.ion()
plab.axes()
for circ in self.circleList:
plab.gca().add_patch(circ)
for line in self.lineList:
plab.gca().add_line(line)
plab.axis('scaled')
plab.show()
Run Code Online (Sandbox Code Playgroud)
其中circleList和lineList是包含图中圆圈和线条的列表
我可能在这里误解了一些简单的东西,但我实际上找不到任何使用plot()函数的基于图形的示例.
澄清:
如何使用pylab.plot()而不是pylab.show()获得相同的输出?
是的,也许我应该使用普通的Python列表,但是这里有:
我想要一个9×4多维数组/矩阵(无论如何)我想要存储数组.这些数组将是1维的,长度为4096.
所以,我希望能够像这样
column = 0 #column to insert into
row = 7 #row to insert into
storageMatrix[column,row][0] = NEW_VALUE
storageMatrix[column,row][4092] = NEW_VALUE_2
etc..
Run Code Online (Sandbox Code Playgroud)
我很欣赏我可以在这里做一些有点傻/不必要的事情,但它会让我更容易在我的代码中将它结构化(因为有很多这些,以及后面要做的很多分析).
谢谢!
python ×6
numpy ×4
arrays ×3
binary ×1
c# ×1
extract ×1
fread ×1
large-files ×1
matlab ×1
matplotlib ×1
networking ×1
pdf ×1
readline ×1
simulation ×1
text ×1