将大字符串转换为数据框

抓到他们了

我有一个看起来像这样的大字符串:

'1开始日期str_date B 10 C \ n 2计算概念cal_nt C 10 0 \ n 3今天的计算率cal_Rate_td C 9 R \ n ....'

问题是我不能使用一个或两个空格来分割我的字符串,因为从开始日期到str_date有2个空格,但是在下一行中将有3个空格,也许下一行将有1个空格来分隔...使我很难创建正确的DataFrame,有没有办法解决?谢谢

克德雷拉克

要获得包含所有单词的列表_(如您在注释中的要求),可以使用正则表达式:

import re

s = '1 Start Date str_date B 10 C \n 2 Calculation notional cal_nt C 10 0\n 3 Calculation RATE Today cal_Rate_td C 9 R\n ....'

list(map(re.Match.group, re.finditer(r'\w+_.\w+', s)))

输出:

['str_date', 'cal_nt', 'cal_Rate_td']

或者您可以使用列表理解:

[e for e in s.split() if '_' in e]

输出:

['str_date', 'cal_nt', 'cal_Rate_td']

要从字符串中获取数据帧,您可以使用以上信息,第三个字段:

s = '1 Start Date str_date B 10 C \n 2 Calculation notional cal_nt C 10 0\n 3 Calculation RATE Today cal_Rate_td C 9 R\n'
third_fields = [e for e in s.split() if '_' in e]    

rows = []
for third_field, row in zip(third_fields, s.split('\n')): 
    current_row = []
    row = row.strip()
    first_field = re.search(r'\d+\b', row).group()
    current_row.append(first_field)
    # remove first field
    row = row[len(first_field):].strip()

    second_field, rest_of_fields = row.split(third_field)
    parsed_fields = [e.group() for e in re.finditer(r'\b[\w\d]+\b', rest_of_fields)]
    current_row.extend([second_field, third_field, *parsed_fields])

    rows.append(current_row)


pd.DataFrame(rows)

输出:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将大字符串转换为数据框

来自分类Dev

将文件内容转换为大字符串

来自分类Dev

将特定的字符串转换为pandas数据框

来自分类Dev

将字符串转换为熊猫数据框的条件

来自分类Dev

将字符串转换为数据框,以冒号分隔

来自分类Dev

将字符串转换为列 - 数据框

来自分类Dev

将数据框中的字符串转换为向量并取消嵌套数据框

来自分类Dev

将包含字典的字符串转换为数据框以获取数据

来自分类Dev

将Spark数据框中的MapType类型的列的数据转换为字符串

来自分类Dev

将列表的大字符串表示形式转换为列表Python 3

来自分类Dev

将大字符串的逗号分隔子字符串转换为QML中的变量数组元素

来自分类Dev

将大字符串的逗号分隔子字符串转换为QML中的变量数组元素

来自分类Dev

将字符串转换为整数pandas数据框索引

来自分类Dev

熊猫:更快地将字符串元组列表转换为数据框?

来自分类Dev

熊猫数据框将特定列从字符串转换为浮点数

来自分类Dev

将文本字符串转换为数据框-逗号分隔

来自分类Dev

熊猫数据框.at ValueError:无法将字符串转换为float

来自分类Dev

将文本/字符串转换为python数据框的数字/整数

来自分类Dev

将数据框字符串类别转换为数字

来自分类Dev

通过正确的NaN处理,将熊猫数据框列从数字转换为字符串

来自分类Dev

将字符串化列表的列表转换为数据框,同时保持索引

来自分类Dev

将字符串日期转换为日期并在数据框中放置时间

来自分类Dev

数据框ValueError:无法将字符串转换为float:

来自分类Dev

如何将数据框列转换为字符串?

来自分类Dev

数据框:单元格级别:将逗号分隔的字符串转换为列表

来自分类Dev

数据框将浮点数转换为全十进制字符串

来自分类Dev

熊猫:更快地将字符串元组列表转换为数据框?

来自分类Dev

Python:将字符串[['a',0.2),('b',0.9),('a',0.4)]转换为数据框

来自分类Dev

将列表转换为所有数据框行的字符串

Related 相关文章

  1. 1

    将大字符串转换为数据框

  2. 2

    将文件内容转换为大字符串

  3. 3

    将特定的字符串转换为pandas数据框

  4. 4

    将字符串转换为熊猫数据框的条件

  5. 5

    将字符串转换为数据框,以冒号分隔

  6. 6

    将字符串转换为列 - 数据框

  7. 7

    将数据框中的字符串转换为向量并取消嵌套数据框

  8. 8

    将包含字典的字符串转换为数据框以获取数据

  9. 9

    将Spark数据框中的MapType类型的列的数据转换为字符串

  10. 10

    将列表的大字符串表示形式转换为列表Python 3

  11. 11

    将大字符串的逗号分隔子字符串转换为QML中的变量数组元素

  12. 12

    将大字符串的逗号分隔子字符串转换为QML中的变量数组元素

  13. 13

    将字符串转换为整数pandas数据框索引

  14. 14

    熊猫:更快地将字符串元组列表转换为数据框?

  15. 15

    熊猫数据框将特定列从字符串转换为浮点数

  16. 16

    将文本字符串转换为数据框-逗号分隔

  17. 17

    熊猫数据框.at ValueError:无法将字符串转换为float

  18. 18

    将文本/字符串转换为python数据框的数字/整数

  19. 19

    将数据框字符串类别转换为数字

  20. 20

    通过正确的NaN处理,将熊猫数据框列从数字转换为字符串

  21. 21

    将字符串化列表的列表转换为数据框,同时保持索引

  22. 22

    将字符串日期转换为日期并在数据框中放置时间

  23. 23

    数据框ValueError:无法将字符串转换为float:

  24. 24

    如何将数据框列转换为字符串?

  25. 25

    数据框:单元格级别:将逗号分隔的字符串转换为列表

  26. 26

    数据框将浮点数转换为全十进制字符串

  27. 27

    熊猫:更快地将字符串元组列表转换为数据框?

  28. 28

    Python:将字符串[['a',0.2),('b',0.9),('a',0.4)]转换为数据框

  29. 29

    将列表转换为所有数据框行的字符串

热门标签

归档