小编meT*_*sky的帖子

如何一次将多个单元格从一个笔记本复制到另一个笔记本(粘贴后单元格不应合并)

如何一次将多个单元格从一个jupyter笔记本复制到另一个笔记本,并且粘贴后单元格不会合并?

\n

我尝试过这个解决方案,其中shift+Up/Down用于选择,cmd\xe2\x8c\x98+ccmd\xe2\x8c\x98+v用于复制和粘贴。但是,粘贴后单元格将合并。

\n

有没有办法阻止细胞融合?

\n

jupyter jupyter-notebook

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

pickle:它如何腌制一个函数?

帖子昨天我给,我无意中发现改变__qualname__功能的对意想不到的效果pickle。通过运行更多的测试,我发现在腌制一个函数时,pickle并没有像我想象的那样工作,并且改变__qualname__函数的 对pickle行为方式有实际影响。

下面的片段是我运行的测试,

import pickle
from sys import modules

# a simple function to pickle 
def hahaha(): return 1

print('hahaha',hahaha,'\n')

# change the __qualname__ of function hahaha
hahaha.__qualname__ = 'sdfsdf'
print('set hahaha __qualname__ to sdfsdf',hahaha,'\n')

# make a copy of hahaha
setattr(modules['__main__'],'abcabc',hahaha)
print('create abcabc which is just hahaha',abcabc,'\n')

try:
    pickle.dumps(hahaha)
except Exception as e:
    print('pickle hahaha')
    print(e,'\n')

try:
    pickle.dumps(abcabc)
except Exception as e:
    print('pickle abcabc, a copy of …
Run Code Online (Sandbox Code Playgroud)

python pickle python-3.x

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

如何了解 slurm 上正在运行的作业的实时内存使用情况?

我对cpu如何与内存通信知之甚少,所以我\xe2\x80\x99m不确定这是否是一个\xe2\x80\x98正确的\xe2\x80\x99问题。

\n\n

在我提交到 slurm 集群的作业脚本中,该脚本需要从存储在工作字典中的数据库读取数据。我想监视运行此脚本所使用的内存。

\n\n

我如何编写 bash 脚本来执行此操作?我已经尝试过@CoffeeNerd的脚本。然而,当作业运行时,文件中只有一行输出

\n\n
AveCPU|AveRSS|MaxRSS\n
Run Code Online (Sandbox Code Playgroud)\n\n

如何修改此脚本以输出实时内存使用情况?

\n\n

我知道sstat命令,但我不确定类似的东西是否sstat -j $JOBID.batch --format=MaxVMSize可以解决我的问题。

\n

slurm

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

设置 numpy 数组的列值的奇怪结果

在下面的脚本中,我想将旋转矩阵应用于(Nx3)数组的前两列。

rotate_mat = lambda theta: np.array([[np.cos(theta),-np.sin(theta)],[np.sin(theta),np.cos(theta)]])

rot_mat = rotate_mat(np.deg2rad(90))

basis1 = np.array([[i+1,j+1,k+1] for k in range(3) for j in range(3) for i in range(3)])
basis2 = basis1.copy()
rot = basis2[:,0:2] @ rot_mat

print('rot','\n',rot[:3],'\n')
print('basis2','\n',basis2[:3],'\n')

basis2[:,0:2] = rot
print('basis2 after','\n',basis2[:3])
Run Code Online (Sandbox Code Playgroud)

运行此脚本后,我获得了此输出

rot 
 [[ 1. -1.]
 [ 1. -2.]
 [ 1. -3.]] 

basis2 
 [[1 1 1]
 [2 1 1]
 [3 1 1]] 

basis2 after 
 [[ 1  0  1]
 [ 1 -2  1]
 [ 1 -3  1]]
Run Code Online (Sandbox Code Playgroud)

正如你所看到的basis2[:,0:2] = rot …

python numpy numpy-slicing numpy-ndarray

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

为什么 multiprocessing.Pool 不能改变全局变量?

我想用来multiprocessing.Pool加载大型数据集,这是我正在使用的代码:

import os
from os import listdir
import pickle
from os.path import join
import multiprocessing as mp

db_path = db_path
the_files = listdir(db_path)
fp_dict = {}
def loader(the_hash):
        global fp_dict
        the_file = join(db_path, the_hash)
        with open(the_file, 'rb') as source:
                fp_dict[the_hash] = pickle.load(source)
        print(len(fp_dict))
def parallel(the_func, the_args):
        global fp_dict
        pool = mp.Pool(mp.cpu_count())
        pool.map(the_func, the_args)
        print(len(fp_dict))
parallel(loader, the_files)
Run Code Online (Sandbox Code Playgroud)

有趣的fp_dict是,当代码运行时, 的长度会发生变化。但是,只要进程终止,长度fp_dict就为零。为什么?如何使用 修改全局变量multiprocessing.Pool

python multiprocessing

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

如何在没有互联网连接的服务器上“conda install”?

我试图tensorflow_gpu在没有互联网连接的服务器上运行。

运行的脚本tensorflow_gpu因以下错误而失败:

Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.

我在这篇文章中找到了解决此问题的方法,我必须执行以下操作:

conda install nomkl numpy scipy scikit-learn numexpr
conda remove mkl mkl-service
Run Code Online (Sandbox Code Playgroud)

由于服务器没有互联网连接,我完全不知道如何安装这些软件包。

为了模仿,我需要上传哪些包到服务器conda install

conda

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