小编Han*_*art的帖子

如何将1D numpy数组分配给2D numpy数组?

考虑以下简单示例:

X = numpy.zeros([10, 4])  # 2D array
x = numpy.arange(0,10)    # 1D array 

X[:,0] = x # WORKS

X[:,0:1] = x # returns ERROR: 
# ValueError: could not broadcast input array from shape (10) into shape (10,1)

X[:,0:1] = (x.reshape(-1, 1)) # WORKS
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么numpy有形状(N,)而不是(N,1)的向量?从1D阵列到2D阵列的最佳铸造方法是什么?

我为什么需要这个?因为我有一个代码将结果插入x到2D数组中X,x的大小会不时变化,所以X[:, idx1:idx2] = x如果x是2D也可以使用,但如果x是1D则不行.

python arrays numpy multidimensional-array

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

通过 python API 列出 azure blob 存储中的虚拟文件夹

我正在阅读本教程,但我无法找到一种方法来列出容器下的所有(虚拟)文件夹而不获取所有文件。我的 500 个(虚拟)文件夹中有 26K 个文件。我只想获取文件夹列表,而不必等待几分钟即可获取list_blobs包含整个文件列表的输出。有没有办法做到这一点?或者至少告诉list_blobs不要深入到n容器下方的水平面?

python azure azure-blob-storage

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

python的selenium"send_keys"与chrome驱动程序删除字符

我在Windows 7中使用带有Python(https://pypi.python.org/pypi/selenium)的selenium包.当我尝试登录我的facebook帐户时,我使用send_keys命令,例如

elem = browser.find_element_by_name("email")
elem.send_keys(email);
elem = browser.find_element_by_name("pass")
elem.send_keys(password);
Run Code Online (Sandbox Code Playgroud)

登录失败显然是因为第二个send_keys删除了密码的第一个字符(我通过直接将密码字符发送到电子邮件字段找到了这个.

这是怎么回事?为什么selenium不能像将密钥发送到输入字段那样简单?这是一种由Facebook编码的拒绝自动脚本的保护措施吗?

试图发送整个字母表得到这个:

abcdefghijklmnopqrstuvwxyzBCDFGIKLNOQSTWX
Run Code Online (Sandbox Code Playgroud)

注意缺少多少个字符......

更新

显然这个问题与facebook无关,而与Chrome驱动程序无关.

如果我发送以下简单代码

browser = webdriver.Chrome()
browser.get("https://www.google.com") # Load page
elem = browser.find_element_by_name("q") # Find the query box
query= "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
elem.send_keys(query)
Run Code Online (Sandbox Code Playgroud)

使用chrome驱动程序,我得到BCDFGIKLNOQSTWX注意A,E,H ... Y,Z是如何丢失使用firefox驱动程序(替换browser = webdriver.Chrome()browser = webdriver.Firefox()我得到:ABCDEFGHIJKLMNOPQRSTUVWXYZ

python selenium google-chrome key send

6
推荐指数
1
解决办法
4050
查看次数

在EMR上使用远程火花上下文在本地工作

我试图弄清楚是否可以在python中本地使用远程EMR集群(AWS)的spark上下文.我已经设置了集群,但是带有远程主服务器的本地定义的SparkContext似乎不起作用.有人有经验吗?在远程笔记本上工作是有限的,因为您无法创建python模块和文件.由于计算资源,本地工作受到限制.可以选择SSH到主节点,但我不能使用pyCharm等图形IDE

amazon emr apache-spark pyspark

6
推荐指数
0
解决办法
1003
查看次数

如何使用 Python 中的 Tkinter 窗口使 matplotlib:pyplot 可调整大小?

我正在尝试在每个有一个 matplotlib 图的框架中构建一个网格。当我调整窗口大小时,图形保持固定大小并且不会调整大小以适应空白空间。有没有办法让图形根据画布改变其大小(希望它会随着窗口大小而改变)?

在扩展窗口之前 展开窗口后

这就是我在每一帧中嵌入的方式:

self._figure = pyplot.figure(figsize=(4,4))       
self._axes = self._figure.add_subplot(111)
self._canvas = FigureCanvasTkAgg(self._figure, master=self._root)
self._canvas.get_tk_widget().grid(row=1,column=1,rowspan = 4)
Run Code Online (Sandbox Code Playgroud)

python tk-toolkit matplotlib

5
推荐指数
1
解决办法
6525
查看次数

Python 多处理 - 为什么每个进程有这么多线程?

我正在使用joblib(多处理包的包装器)在可枚举参数上的某些函数上运行循环。当我这样做时htop,我看到进程数等于 cpu 计数(n_jobs=-1自动为您执行此操作)。但是,我还看到每个进程都有尽可能多的线程cpu_count - 1...这是预期的吗?为什么会有第二层并行性?它从何而来?

python multithreading multiprocessing htop joblib

5
推荐指数
1
解决办法
1756
查看次数

python filecmp.dircmp 忽略通配符

filecmp.dircmp 用于比较两个文件夹。它接受一个参数ignore,但它只进行精确匹配,而不进行通配符匹配。知道如何忽略模式吗?

python compare file

5
推荐指数
1
解决办法
1348
查看次数

未找到类org.apache.hadoop.fs.s3native.NativeS3FileSystem(Spark 1.6 Windows)

我试图使用pySpark从本地spark上下文访问s3文件.我一直在File "C:\Spark\python\lib\py4j-0.9-src.zip\py4j\protocol.py", line 308, in get_return_value py4j.protocol.Py4JJavaError: An error occurred while calling o20.parquet. : java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3native.NativeS3FileSystem not found

我已经设定os.environ['AWS_ACCESS_KEY_ID']os.environ['AWS_SECRET_ACCESS_KEY']之前我打电话df = sqc.read.parquet(input_path).我还添加了这些行: hadoopConf.set("fs.s3.impl", "org.apache.hadoop.fs.s3native.NativeS3FileSystem") hadoopConf.set("fs.s3.awsSecretAccessKey", os.environ["AWS_SECRET_ACCESS_KEY"]) hadoopConf.set("fs.s3.awsAccessKeyId", os.environ["AWS_ACCESS_KEY_ID"]) 我也试图改变s3s3n,s3a.都没有奏效.

知道如何让它工作吗?我在Windows 10,pySpark,Spark 1.6.1上为Hadoop 2.6.0构建

windows amazon-s3 apache-spark windows-10 pyspark

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

pyspark访问数据框的列,带点'.'

groupby除非首先重命名,否则包含点(例如"id.orig_h")的pyspark数据帧将不允许为uppon withColumnRenamed.有解决方法吗?"`a.b`"似乎没有解决它.

dataframe apache-spark pyspark

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

是否有一个Matlab的缓冲区相当于numpy?

我看到有一个array_splitsplit 方法,但是当你必须拆分一个长度不是块大小的整数倍的数组时,这些并不是很方便.而且,这些方法输入是切片的数量而不是切片大小.我需要更像Matlab 缓冲方法的东西,它更适合信号处理.

例如,如果我想将信号缓冲到大小为60的块,我需要这样做:np.vstack(np.hsplit(x.iloc[0:((len(x)//60)*60)], len(x)//60))这很麻烦.

python matlab buffer numpy

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