使用 csv 读取将值添加到 DASK 数据帧导入的列

2023-11-29

假设使用以下命令将五个文件导入到 DASKcsv_read。为此,我使用以下代码:

import dask.dataframe as dd
data = dd.read_csv(final_file_list_msg, header = None)

每个文件有十列。我想将 1 添加到文件 1 的第一列,将 2 添加到文件 2 的第一列,将 3 添加到文件 3 的第一列,依此类推。


假设您有几个遵循此方案的文件:

dummy/
├── file01.csv
├── file02.csv
├── file03.csv

首先我们通过以下方式创建它们

import os
import pandas as pd
import numpy as np
import dask.dataframe as dd
from dask import delayed

fldr = "dummy"

if not os.path.exists(fldr):
    os.mkdir(fldr)

for i in range(10):
    df = pd.DataFrame(np.random.rand(5,3))
    df.to_csv("{}/file{:02}.csv".format(fldr,i+1),
              index=False)

创建的文件列表是fns = sorted(os.listdir(fldr))

然后我们编写一个给出路径的函数fn:

  • 读取文件
  • 取数字XXfileXX.csv
  • insert int(XX)在第一列

That is

def addCol(fn):
    df = pd.read_csv(os.path.join(fldr, fn))
    first = int(fn.split(".")[0][-2:])
    df.insert(0, "first", first)
    return df

我们希望这种乐趣成为delayed我们可以使用装饰器来实现@delayed或将函数包装为delayed。因此,为了获得所需的输出,我们应该(相应地)触发

  • ddf = dd.from_delayed([addCol(fn) for fn in fns])
  • ddf = dd.from_delayed([delayed(addCol)(fn) for fn in fns])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 csv 读取将值添加到 DASK 数据帧导入的列 的相关文章

随机推荐

  • 如何更改模拟导入的行为?

    我对 Jest 中的模拟以及如何对实现进行单元测试感到非常困惑 问题是我想嘲笑不同的预期行为 有什么办法可以实现这一点吗 因为导入只能位于文件的顶部 并且为了能够模拟某些内容 必须在导入之前声明它 我还尝试传递一个本地函数 这样我就可以覆盖
  • 嵌套 FormGroup 的 FormControl 是 ng-valid,尽管 FromGroup 是 ng-invalid

    我有一个名为 等级 的嵌套表单组 尽管嵌套表单组 grades 应用了 ng invalid 类 但子表单控件确实应用了 ng valid 类 为什么失效没有从嵌套表单继承到其控件 this schoolyearForm this form
  • 无法确定关联的主体

    在这种关联中 我收到错误 无法确定类型 Foo 和 Bar 之间关联的主要端 必须使用关系流畅 API 或数据注释显式配置此关联的主要端 public class Foo public int Id get set public int M
  • 无法在 Visual Studio 代码中启动 C++ 调试器

    我刚刚从 Netbeans 切换到 Visual Studio 代码 并且无法调试 C 错误是Unable to start debugging Launch options string provided by the project s
  • 从 JSON 获取数据到 D3.js

    I tried d bubbledata values value or d bubbledata values 0 value 但没有得到结果 我怎样才能获得所有有价值的属性 我的代码是 var circles svg selectAll
  • 使用 NSURLSession 时 UI 被阻止

    我正在开发一个需要登录表单的项目 使用网络服务进行身份验证 我连接到服务器没有问题 但似乎 NSURLSession 阻止了我的用户界面 经过大量调试后我真的不知道为什么 为了简单起见 这是我的简短代码 NSMutableURLReques
  • 如何将 PowerShell 与 Visual Studio 命令提示符结合使用?

    我已经使用 Beta 2 一段时间了 运行 Visual Studio 2010 命令提示符时必须输入 cmd exe 这让我抓狂 我曾经有一个美好的vsvars2008 ps1Visual Studio 2008 的脚本 有吗vsvars
  • 如何从 C++ 字符串中删除所有非字母数字字符?

    我正在编写一个软件 它要求我使用 libcurl 处理从网页获取的数据 当我获取数据时 由于某种原因 其中有额外的换行符 我需要找到一种只允许字母 数字和空格的方法 并删除其他所有内容 包括换行符 有什么简单的方法可以做到这一点吗 谢谢 编
  • R应用具有多个参数的函数

    我有一个函数f var1 var2 在 R 中 假设我们设置var2 1现在我想应用这个函数f 到列表L 基本上我想得到一个带有输出的新列表 L f L 1 1 f L 2 1 f L n 1 我该如何做到这一点apply mapply o
  • 如何使用 jQuery 将表格的一行滚动到视图 (element.scrollintoView) 中?

    我使用 jQuery 动态地将行添加到表中 这table是在一个里面div其中有overflow auto从而导致垂直滚动条 我现在想自动滚动我的容器div到最后一排 jQuery 版本是什么tr scrollintoView 如果您需要滚
  • 更改 .NET MAUI 应用程序中的汉堡菜单图标

    如何更改 NET MAUI 应用程序中的汉堡菜单图标 我已经更新了所有图标的样式 我想将汉堡菜单图标更改为自定义PNG 我尝试了以下内容Styles xaml但这似乎不是要编辑的正确属性 FlyoutPage的解决方案 的飞出FlyoutP
  • 将数组转换为 JSON

    我需要引入 csv 文档并将其转换为 JSON 到目前为止 我已经能够将其转换为数组 并且我正在尝试从该数组构建一个 JSON 对象 下面是构建 JSON 的 JavaScript 但它不在我需要的结构中 下面是所需结构的示例 var js
  • 如何在 JavaScript 中获取之前的 URL?

    JavaScript 有没有办法获取之前的 URL 像这样的东西 alert previous url is window history previous href 有这样的事吗 或者我应该把它存储在 cookie 中 我只需要知道 这样
  • 更改字符指针变量中的字符[重复]

    这个问题在这里已经有答案了 我正在尝试更改 char 指针变量指向的字符 char test3 mutable printf Expected mutable Result s n test3 testt test3 printf Expe
  • plot3d - 如何更改框颜色并删除轴刻度

    我正在尝试对默认的plot3d 对象进行一些视觉修改 具体来说 我想将灯箱颜色作为背景 仅在框中 而不是整个调色板中 并删除轴刻度线 轴上的 x y z 值会分散注意力 我花了无数的时间在谷歌上搜索要改变的选项 但我一生都无法弄清楚这一点
  • 未找到中央目录条目(ZipException)

    我正在尝试将 zip 文件下载到 SD 卡 我正确下载了它 但是当我打开下载的文件 使用 ZipFile 时 我收到此 ZipException 未找到中央目录条目 互联网文件没问题 SD 复制文件没问题 从 PC 打开并正确显示文件 但由
  • 连接父表和子表的最佳方式

    我有父表A A有几个子表 例如B C D E F G子表不相互链接 它们仅链接到A A有钥匙Id它在所有子表中用作外键 连接这些表的最佳方式是什么 以便我可以为此创建单个视图 由于父表中的某些表可能有子行 因此您必须使用 LEFT OUTE
  • 在使用变量调用的函数中实现 mutate

    我想使用不同的变量多次调用一个函数 每次都为数据框中的新变量设置一个值 这是我失败的尝试 我很感激任何帮助 dat lt tibble score1 runif 10 score2 score1 2 call mutate with var
  • WCF:序列化为数组的通用列表

    因此 我正在使用 WCF 和我的服务返回包含通用列表的类型 WCF 当前正在通过网络将它们转换为数组 有没有办法配置 WCF 之后将它们转换回列表 我知道有一种方法可以在添加服务引用时单击 高级 但我正在配置文件或类似的内容中寻找解决方案
  • 使用 csv 读取将值添加到 DASK 数据帧导入的列

    假设使用以下命令将五个文件导入到 DASKcsv read 为此 我使用以下代码 import dask dataframe as dd data dd read csv final file list msg header None 每个