小编Shr*_*dha的帖子

Modin 读取 CSV 的时间比 pandas 更多

我正在使用modin.pandas来缩放pandas以适应大型数据集。但是,当使用pd.read_csv加载 5 MB csv 数据集来比较和jupyter notebook的性能时,它会给出意外的执行时间。modin.pandaspandas

modin.pandas所花费的时间比pandas. 为什么?

代码-

import modin.pandas as mpd
df = mpd.read_csv(r"C:\Downloads\annual-enterprise-survey-2019-financial-year-provisional-csv.csv")

import pandas as pd
df = pd.read_csv(r"C:\Downloads\annual-enterprise-survey-2019-financial-year-provisional-csv.csv")
Run Code Online (Sandbox Code Playgroud)

是 CSV 文件的链接。我正在使用 modin 版本0.8.3和 pandas 版本1.1.5

输出截图-

Jupyter 笔记本输出

系统信息-

系统信息

编辑:我尝试使用 500 MB 的 CSV 文件,结果略有改善。modin现在和的执行时间pandas几乎相同。这是常见的吗?

python parallel-processing pandas jupyter-notebook modin

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

在合并和排序函数中列出超出范围的索引

我尝试在 python 中编写一个简单的合并和排序函数,但在收到以下错误后卡住了 -

List out of range. 
Run Code Online (Sandbox Code Playgroud)

如果您能帮我修复它并找出如何避免它,我将不胜感激。我在下面添加了代码-

def merge(lst1, lst2):
    # Gets two sorted lists and returns one merged and sorted list
    merge_sorted = []
    i = 0
    j = 0
    len1 = len(lst1) - 1
    len2 = len(lst2) - 1
    while i < len1 or j < len2:
        if lst1[i] < lst2[j]:
            merge_sorted.append(lst1[i])
            i += 1
        elif lst1[i] > lst2[j]:
            merge_sorted.append(lst2[j])
            j += 1
        else:
            merge_sorted.append(lst1[i])
            merge_sorted.append(lst2[j])
            i += 1
            j += 1
    return merge_sorted

lst1 = …
Run Code Online (Sandbox Code Playgroud)

python mergesort

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