小编Lav*_*tel的帖子

如何并行合并两个pandas数据帧(多线程或多处理)

如果不进行并行编程,我可以key使用下面的代码在列上合并左侧和右侧数据帧,但由于两者都非常大,因此速度太慢.有没有什么方法可以有效并行化?

我有64个内核,所以实际上我可以使用其中的63个来合并这两个数据帧.

left = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'],
                      'A': ['A0', 'A1', 'A2', 'A3'],
                     'B': ['B0', 'B1', 'B2', 'B3']})


right = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'],
                      'C': ['C0', 'C1', 'C2', 'C3'],
                      'D': ['D0', 'D1', 'D2', 'D3']})


result = pd.merge(left, right, on='key')
Run Code Online (Sandbox Code Playgroud)

输出将是:

left:
    A   B key
0  A0  B0  K0
1  A1  B1  K1
2  A2  B2  K2
3  A3  B3  K3

right:
    C   D key
0  C0  D0  K0
1  C1  D1  K1
2  C2  D2  K2 …
Run Code Online (Sandbox Code Playgroud)

python parallel-processing multithreading multiprocessing pandas

8
推荐指数
2
解决办法
4455
查看次数

无法使用 ggplot 创建垂直标签

使用以下代码,我可以使用 geom_text 获取标签,但它们不是垂直的,即使在我将角度更改为 90 后也是如此。

 p1 <- ggplot(segment(p)) +
         geom_segment(aes(x=x,y=y,xend=xend,yend=yend),colour="blue") + labs(y = "Label y") +
         theme_classic()+theme(axis.line.x=element_blank(), axis.text.x=element_blank(), axis.ticks.x=element_blank(),axis.title.x=element_blank()) + 
         geom_text(data=leaf_label_data, aes(x=xend, y=yend,label=label,angle = 90))
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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