Pandas 反向分割函数

2023-12-12

我有一个 Pandas Dataframe,其中有一列,如下所示:

    Car_Make
0   2017 Abarth 124 Spider ManualConvertible
1   2017 Abarth 124 Spider AutoConvertible
2   2017 Abarth 124 Spider ManualConvertible
3   2017 Abarth 124 Spider AutoConvertible
4   2017 Abarth 595 ManualHatch
5   2017 Abarth 595 AutoHatch

三个问题:

1 如何以相反的顺序保存panda中的拆分数据?- 这解决了我的问题,但我不知道它是如何或为什么起作用的 - 有人可以向我解释一下吗?我讨厌在不理解其原理的情况下复制粘贴

df['Car_Make'].apply(lambda x:pd.Series(x.split()[::-1])) 

2 我尝试使用用户定义的函数(我可以再次使用)复制它,但它似乎不起作用(任何帮助理解为什么以及将 Lambda 函数转换为用户的正确方法 -定义函数

def f(x):
    df[x] = pd.Series(x.split()[::-1])
    return df

3 有没有更好的方法来按空格反向分割该列?

我尝试过使用正则表达式,它有效,但不是在所有行上,因为您可以看到第 4 行和第 5 行与上面略有不同。

任何帮助将不胜感激。

谢谢, 阿德里安


下面就你的三个问题来解答一下:

1)为什么df['Car_Make'].apply(lambda x:pd.Series(x.split()[::-1])) work?

分解一下:

  1. df['Car_Make']- 包含您要操作的数据的列
  2. .apply() - a pandasDataFrame 和 Series 方法,将函数应用于 DataFrame 中的每一列或每一行,或 Series 中的每一行。
  3. lambda x:- 将应用的函数.apply()系列的每一行的方法。x表示记录对象,在您的情况下是包含Car_Make条目。
  4. pd.Series()- 这会将其中的值转换为pandas Series.
  5. x.split()- 如第 3 点所述,x是你的字符串对象,并且split()是一个字符串方法,当不带参数传递时,默认按空格分割字符串并将每个分割对象返回到列表中。
  6. [::-1]- 一个方便的列表迭代器,可以反转列表,例如由x.split()。列表迭代的语法是[start_index:end_index:step]。使用 -1 步向后迭代列表。

将所有这些放在一起,该代码将迭代中的每条记录df['Car_Make'],分割它们,反转分割项的顺序,并将反转的列表作为 pandas Series 对象返回。

2)用定义的函数复制它。

你真的很接近,只是该函数需要将行/记录作为其参数,并且需要在.apply()方法。你想要做的是更换lambda x,而不是它的应用方式。

使用您目前拥有的:

def f(x):
    return pd.Series(x.split()[::-1])

df['Car_Make'].apply(f)

3)有更好的方法吗?

如果您想分割一个字符串,然后反转项目的顺序,不,这是一个很好的方法。如果只想从右侧开始分割字符串的某个部分,那么rsplit()是一个好方法。

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

Pandas 反向分割函数 的相关文章

  • 让 VoiceChannel.members 和 Guild.members 返回完整列表的问题

    每当我尝试使用 VoiceChannel members 或 Guild members 时 它都不会提供适用成员的完整列表 我从文本命令的上下文中获取 VoiceChannel 和 Guild 如下所示 bot command name
  • Gunicorn 工作人员无论如何都会超时

    我正在尝试通过gunicorn运行一个简单的烧瓶应用程序 但是无论我做什么 我的工作人员都会超时 无论是否有针对应用程序的活动 工作人员在我设置任何内容后总是会超时timeout值到 是什么导致它们超时 当我发出请求时 请求成功通过 但工作
  • matplotlib 图中点的标签

    所以这是一个关于已发布的解决方案的问题 我试图在我拥有的 matplotlib 散点图中的点上放置一些数据标签 我试图在这里模仿解决方案 是否有与 MATLAB 的 datacursormode 等效的 matplotlib https s
  • 嵌套列表的重叠会产生不必要的间隙

    我有一个包含三个列表的嵌套 这些列表由 for 循环填充 并且填充由 if 条件控制 第一次迭代后 它可能类似于以下示例 a 1 2 0 0 0 0 0 0 4 5 0 0 0 0 0 0 6 7 根据条件 它们不重叠 在第二次迭代之后 新
  • Tensorboard SyntaxError:语法无效

    当我尝试制作张量板时 出现语法错误 尽管开源代码我还是无法理解 我尝试搜索张量板的代码 但不清楚 即使我不擅长Python 我这样写路径C Users jh902 Documents logs因为我正在使用 Windows 10 但我不确定
  • Python 内置的 super() 是否违反了 DRY?

    显然这是有原因的 但我没有足够的经验来认识到这一点 这是Python中给出的例子docs http docs python org 2 library functions html super class C B def method se
  • 如何使用 Selenium 和 ChromeDriver 解决 TypeError: 'module' object is not callable 错误 [重复]

    这个问题在这里已经有答案了 代码试验 from selenium import webdriver from selenium webdriver chrome options import Options as Chromeoptions
  • 从 Powershell 脚本安装 Python

    当以管理员身份从 PowerShell 命令行运行以下命令时 可以在 Windows 11 上成功安装 Python c temp python 3 11 4 amd64 exe quiet InstallAllUsers 0 Instal
  • 导入错误:没有名为flask.ext.login的模块

    我的flask login 模块有问题 我已经成功安装了flask login模块 另外 从命令提示符我可以轻松运行此脚本 不会出现错误 Python 2 7 r27 82525 Jul 4 2010 07 43 08 MSC v 1500
  • 嵌套作用域和 Lambda

    def funct x 4 action lambda n x n return action x funct print x 2 prints 16 我不太明白为什么2会自动分配给n n是返回的匿名函数的参数funct 完全等价的定义fu
  • python的shutil.move()在linux上是原子的吗?

    我想知道python的shutil move在linux上是否是原子的 如果源文件和目标文件位于两个不同的分区上 行为是否不同 或者与它们存在于同一分区上时的行为相同吗 我更关心的是如果源文件和目标文件位于同一分区上 shutil move
  • 如何使用 Python 3 检查目录是否包含文件

    我到处寻找这个答案但找不到 我正在尝试编写一个脚本来搜索特定的子文件夹 然后检查它是否包含任何文件 如果包含 则写出该文件夹的路径 我已经弄清楚了子文件夹搜索部分 但检查文件却难倒了我 我发现了有关如何检查文件夹是否为空的多个建议 并且我尝
  • 找到一个数字所属的一组范围

    我有一个 200k 行的数字范围列表 例如开始位置 停止位置 该列表包括除了非重叠的重叠之外的所有类型的重叠 列表看起来像这样 3 5 10 30 15 25 5 15 25 35 我需要找到给定数字所属的范围 并对 100k 个数字重复该
  • Spider 必须返回 Request、BaseItem、dict 或 None,已“设置”

    我正在尝试从以下位置下载所有产品的图像 我的蜘蛛看起来像 from shopclues items import ImgData import scrapy class multipleImages scrapy Spider name m
  • PySpark groupByKey 返回 pyspark.resultiterable.ResultIterable

    我试图找出为什么我的 groupByKey 返回以下内容 0
  • Python:Goslate 翻译请求返回“503:服务不可用”[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我们不允许提出寻求书籍 工具 软件库等推荐的问题 您可以编辑问题 以便用事实和引文来回答 这个问题似乎不是关于主要由程序员使用的特定编程问
  • Firebase Firestore:获取文档的生成 ID (Python)

    我可以创建一个新文档 带有自动生成的 ID 并存储对其的引用 如下所示 my data key value doc ref db collection u campaigns add my data 我可以像这样访问数据本身 print d
  • 如何从pandas中的多列计算多列

    我正在尝试使用函数从 pandas 数据框中的多个列计算多个列 该函数采用三个参数 a b 和 c 并返回三个计算值 sum prod 和 quot 在我的 pandas 数据框中 我有三个列 a b 和 c 我想从中计算列 sum pro
  • python 对浮点数进行不正确的舍入

    gt gt gt a 0 3135 gt gt gt print 3f a 0 314 gt gt gt a 0 3125 gt gt gt print 3f a 0 312 gt gt gt 我期待 0 313 而不是 0 312 有没有
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • Jquery .live() 事件在 Firefox 和 IE 上不起作用

    我有现场活动 需要提交并点击
  • Swagger 对象数组

    我在 swagger 方面遇到了一些问题 我在 yaml 文件中以这种方式描述了一组对象 地址 Address properties street type string city type string state type string
  • Bootstrap 3 使用 Javascript 在页面加载时打开下拉菜单

    我似乎无法在页面加载时打开此下拉菜单 有人可以帮忙吗 Bootrap 3 的文档在这里 http getbootstrap com javascript dropdowns 我尝试过 但似乎不起作用 myDropdown dropdown
  • 用于 Javascript 的 .tiff 库

    有没有类似的图书馆画布2图像 请查看createBMP函数 在JavaScript 浏览器或nodejs 中制作 tiff 本机浏览器对 tiff 文件的支持仍然很差 维基百科对浏览器有很好的概述图片格式支持 话虽如此 由于 tiff 图像
  • (未知):#2514:获取脚本时发生未知错误。 [服务人员]

    这是控制台上的内容 unknown 2514 An unknown error occurred when fetching the script Service Workers 当服务工作人员接管或跳过等待并且我在网络关闭的情况下重新加载
  • GnuPlot 中的线图,其中线宽是我的数据文件中的第三列?

    我有一个包含三列的数据文件 1 1 0 1 2 1 5 2 3 0 0 3 4 1 2 2 5 5 1 0 1 6 1 1 5 其中第一列是我的 X 值 第二列是我的 Y 值 第三列是线宽 我希望根据第三列线宽绘制每个线段 I tried
  • 升级到Xcode 10后出现问题:找不到构建输入文件

    我昨晚将 Xcode SDK 升级到版本 10 然后发现无法构建 我收到此错误 找不到构建输入文件 Users call01 Library Developer Xcode DerivedData Comp Lite Apps gytvmo
  • 如何在Python中使用turtle模块播放GIF?

    我想让 GIF 在海龟屏幕上播放 但它只显示静态图像 请解决这个问题 任何帮助将不胜感激 这是我的代码 import turtle import os resources bgpic r C Users intel Desktop xBDT
  • 以编程方式检测 iPhone 中的 Sim 卡是否可用

    您好 我正在使用 SMSComposer 想要从地址簿中向联系人发送短信 我想检测我的 iPhone 中是否有 SIM 卡 我有什么办法可以达到这个目的吗 我尝试了 REachability Classes 但它为您提供了有关 WWAN 和
  • 使用自定义选择颜色和边框创建分组 UITableviewCell

    我目前正在编写一个应用程序 它在分组表视图中使用不同的选择颜色 就边界而言 这非常有效 我可以使用这篇文章中的代码更改选择颜色 如何自定义分组表视图单元格的背景 边框颜色 BUT我还想在苹果使用的单元格周围添加漂亮的边框 我该如何使用这个边
  • 无法安装 HTTPBuilder

    我正在尝试安装HTTPBuilder像这样 Grab group org codehaus groovy modules http builder module http builder version 0 7 2 但是 我收到此错误 ja
  • 如何从像素缓冲区创建 Win32 HBITMAP

    我尝试从像素缓冲区创建 HBITMAP 并显示它 这是我创建 HBITMAP 的代码 char buffer 640 480 3 memset buffer 255 640 480 3 BITMAPINFO bm sizeof BITMAP
  • Django 查询集匹配所有相关对象

    假设我有一个从 Coconut 到 Swallow 的外键 即 一只燕子携带了许多椰子 但每个椰子只被一只燕子携带 现在假设我有一个从 husk segment 到 Coconut 的外键 现在 我有一个 husk segments 列表
  • 整数太大[重复]

    这个问题在这里已经有答案了 嗨 我无法理解为什么这不起作用 if Long parseLong morse 4545454545 System out println 2 其中莫尔斯只是一串数字 问题是它说整数太大 4545454545 但
  • 如何从 CSV 中提取命名列?

    我有一个包含大约 50 列的 csv 文件 但我只需要其中大约 10 列 我希望能够从该 csv 文件中提取所需的列到新的 csv 文件中 这篇文章的最佳答案如何删除 CSV 文件中的列 看起来它会完全满足我的需要 但这是我每天都需要做的事
  • 使用 GET 的 MVC AttributeRouting - 返回 405 - 不允许的方法

    我刚刚在研究一种新的控制器操作方法 我有点困惑为什么会看到 405 我已经在我的 API 上定义了几个 GET 属性方法 它们都按预期运行 举个例子 这工作得很好 GET entries page JsonExceptionFilter p
  • 与绘图线一起创建标签

    我问了一个有关自定义小部件的问题 但对我是否需要它以及应该如何进行感到困惑 我目前有这门课 public class GUIEdge public Node node1 public Node node2 public int weight
  • 从 GCP 连接到 Azure SQL 时出现 NoClassDefFoundError com/microsoft/aad/adal4j/AuthenticationException

    我的 Spark 项目位于 GCP 中的 data proc 上 并在 Spark 提交上运行驱动程序 当我尝试连接到 Azure SQL DB 时 它抛出以下异常 20 39 15 DOCKER Exception in thread m
  • 为什么无序流比有序流更快?

    我正在阅读 Richard Warburton 所著的 Java 8 书籍 并得出以下结论 某些操作在有序流上的成本更高 这个问题可以 可以通过消除排序来解决 为此 请调用流的unordered方法 我对此感到非常困惑 假设我们有Strea
  • Pandas 反向分割函数

    我有一个 Pandas Dataframe 其中有一列 如下所示 Car Make 0 2017 Abarth 124 Spider ManualConvertible 1 2017 Abarth 124 Spider AutoConver