此处将为大家介绍关于在Python熊猫中使用多个字符分隔符read_csv的详细内容,并且为您解答有关python熊猫代码的相关问题,此外,我们还将为您介绍关于delphi–如何用多字符分隔符分割字符
此处将为大家介绍关于在Python熊猫中使用多个字符分隔符read_csv的详细内容,并且为您解答有关python熊猫代码的相关问题,此外,我们还将为您介绍关于delphi – 如何用多字符分隔符分割字符串?、Pandas的性能差异read_table,read_csv,from_csv和read_excel?、Python Pandas教程之使用 pandas.read_csv() 读取 csv、Python - CSV 文件中的列包含多个分隔符和结果的有用信息。
本文目录一览:- 在Python熊猫中使用多个字符分隔符read_csv(python熊猫代码)
- delphi – 如何用多字符分隔符分割字符串?
- Pandas的性能差异read_table,read_csv,from_csv和read_excel?
- Python Pandas教程之使用 pandas.read_csv() 读取 csv
- Python - CSV 文件中的列包含多个分隔符和结果
在Python熊猫中使用多个字符分隔符read_csv(python熊猫代码)
似乎pandas read_csv 函数仅允许使用单个字符定界符/分隔符。有没有办法允许使用字符串“ * | *”或“ %%”代替?
答案1
小编典典解决方案是使用read_table而不是read_csv:
1*|*2*|*3*|*4*|*512*|*12*|*13*|*14*|*1521*|*22*|*23*|*24*|*25
因此,我们可以阅读以下内容:
pd.read_table(''file.csv'', header=None, sep=''\*\|\*'')
delphi – 如何用多字符分隔符分割字符串?
例如当我以这种方式使用这个功能:
SplitString('Whale<->Mammal<->Ocean','<->')
我会得到这3个字符串的结果:
'Whale','Mammal','Ocean'
在Delphi中有这样的功能吗?
解决方法
procedure TForm208.Button1Click(Sender: TObject); var lst: TStringList; begin lst := TStringList.Create; try lst.LineBreak := '<->'; lst.Text := 'Whale<->Mammal<->Ocean'; Memo1.Lines := lst; finally lst.Free; end; end;
Pandas的性能差异read_table,read_csv,from_csv和read_excel?
我倾向于将.csv文件导入熊猫,但有时我可能会获取其他格式的数据来制作DataFrame
对象。
今天,我只是发现了有关read_table
为其他格式的“通用”的进口商,如果有阅读的.csv文件,例如,在大熊猫的各种方法之间显著的性能差异纳闷read_table
,from_csv
,read_excel
。
- 这些其他方法的性能是否比以下更好
read_csv
? - 是
read_csv
远远不同的from_csv
创建DataFrame
?
Python Pandas教程之使用 pandas.read_csv() 读取 csv
前言:
Python 是一种用于进行数据分析的出色语言,主要是因为以数据为中心的 Python 包的奇妙生态系统。Pandas 就是其中之一,它使导入和分析数据变得更加容易。
大多数用于分析的数据以表格格式的形式提供,例如 Excel 和逗号分隔文件 (CSV)。要访问 csv 文件中的数据,我们需要一个函数 read_csv() 以数据框的形式检索数据。在使用这个功能之前,我们必须导入 pandas 库。
导入 Pandas 库:
import pandas as pd
read_csv() 函数用于从 csv 文件中检索数据。read_csv() 方法的语法是:
pd.read_csv(filepath_or_buffer, sep='', '', delimiter=None, header=''infer'', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, iterator=False, chunksize=None, compression=''infer'', thousands=None, decimal=b''.'', lineterminator=None, quotechar=''"'', quoting=0, escapechar=None, comment=None, encoding=None, dialect=None, tupleize_cols=None, error_bad_lines=True, warn_bad_lines=True, skipfooter=0, doublequote=True, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None)
代码 #1 从 csv 文件中检索数据
# Import pandas import pandas as pd # 读取csv文件 pd.read_csv("filename.csv")
这是带有默认值的参数列表。并非所有这些都很重要,但记住这些实际上可以节省自己执行某些功能的时间。通过在 jupyter notebook 中按 shift + tab 可以查看任何函数的参数。
下面给出了有用的和它们的用法:
- filepath_or_buffer:这是要使用此函数检索的文件的位置。它接受文件的任何字符串路径或 URL。
- sep:表示分隔符,默认为 '', '',如 csv(逗号分隔值)。
- header:它接受 int、int 列表、行号用作列名和数据的开头。如果没有传递名称,即header=None,那么它将显示第一列为0,第二列显示为1,以此类推。
- usecols:用于仅从 csv 文件中检索选定的列。
- nrows:表示要从数据集中显示的行数。
- index_col:如果没有,则没有索引号与记录一起显示。
- 挤压:如果为真且仅传递一列,则返回熊猫系列。
- skiprows:跳过新数据框中传递的行。
- 名称:它允许检索具有新名称的列。
范围 | Use |
---|---|
filepath_or_buffer | 文件的 URL 或目录位置 |
sep | 代表分隔符,默认为 '', '' 如 csv(逗号分隔值) |
index_col | 将传递的列作为索引而不是 0、1、2、3…r ![]() |
header | 将传递的 row/s[int/int list] 作为标题 ![]() |
use_cols | 仅使用传递的 col[string list] 来制作数据框 |
squeeze | 如果为 true 且仅传递一列,则返回 pandas 系列 |
skiprows | 跳过新数据框中传递的行 |
Code #2 :
# 导入 Pandas 库 import pandas as pd pd.read_csv(filepath_or_buffer = "pokemon.csv") # 使传递的行标题 pd.read_csv("pokemon.csv", header =[1, 2]) # 将传递的列作为索引而不是 0、1、2、3.... pd.read_csv("pokemon.csv", index_col =''Type'') # 仅将传递的 cols 用于数据框 pd.read_csv("pokemon.csv", usecols =["Type"]) # 如果只有一列,则返回熊猫系列 pd.read_csv("pokemon.csv", usecols =["Type"], squeeze = True) # 跳过新系列中传递的行 pd.read_csv("pokemon.csv", skiprows = [1, 2, 3, 4])
到此这篇关于Python Pandas教程之使用 pandas.read_csv() 读取 csv的文章就介绍到这了,更多相关Python pandas.read_csv() 读取 csv内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
- python中pandas.read_csv()函数的深入讲解
- python中csv文件创建、读取及修改等操作实例
- Python如何读取csv文件时添加表头/列名
- 一文搞懂Python读取text,CSV,JSON文件的方法
- python用pd.read_csv()方法来读取csv文件的实现
- 在python中读取和写入CSV文件详情
- python读取和保存为excel、csv、txt文件及对DataFrame文件的基本操作指南
Python - CSV 文件中的列包含多个分隔符和结果
如何解决Python - CSV 文件中的列包含多个分隔符和结果?
我有一个相当大的 CSV 文件,其中包含多列(无分隔符)和一列包含使用三个分隔符的结果。
主要分隔符是“;”,用于分隔结果的天数。
第二个分隔符是“:”,它分隔每天的结果(我只使用了 6 个结果中的 2 个)。
第三个分隔符是“/”,用于分隔结果日期和结果的日历值。
我想尽可能避免循环遍历“X&Y”列,因为该列本身包含许多分隔结果,并且有很多行。
Col1 | Col2 | X&Y |
---|---|---|
A | B | 20200331/1D::::1:2;20200401/2D::::3:4;20200402/3D::::5:6 |
AA | BB | 20210330/1Y::::11:22;20220330/2Y::::33:44;20230330/3Y::::55:66 |
我想看:
Col1 | Col2 | 日期 | 日历值 | X | Y |
---|---|---|---|---|---|
A | B | 20200331 | 一维 | 1 | 2 |
A | B | 20200401 | 二维 | 3 | 4 |
A | B | 2020040 | 3D | 5 | 6 |
AA | BB | 20210330 | 1Y | 11 | 22 |
AA | BB | 20220330 | 2Y | 33 | 44 |
AA | BB | 20220330 | 3 年 | 55 | 66 |
import pandas as pd
df = pd.DataFrame({''Col1'':[''A'',''AA''],''Col2'':[''B'',''BB''],''Col3'':[''20200331/1D::::1:2;20200401/2D::::3:4;20200402/3D::::5:6'',''20210330/1Y::::11:22;20220330/2Y::::33:44;20230330/3Y::::55:66'']})
解决方法
这是您可以尝试的解决方案,基于分隔符 (;)
后跟 explode
进行拆分以转换为行。接着是 extract
& 最后 concat
帧以获得结果帧。
import pandas as pd
import re
df = pd.DataFrame({''Col1'': [''A'',''AA''],''Col2'': [''B'',''BB''],''Col3'': [''20200331/1D::::1:2;20200401/2D::::3:4;20200402/3D::::5:6'',''20210330/1Y::::11:22;20220330/2Y::::33:44;20230330/3Y::::55:66'']})
df[''Col3''] = df[''Col3''].str.split(";")
# extract features from the string
extract_ = re.compile(r"(?P<Date>\w+)/(?P<CalendarValue>\w+):+(?P<X>.+):(?P<Y>.+)")
pd.concat([
df.drop(columns=''Col3''),df[''Col3''].explode().str.extract(extract_,expand=True)
],axis=1)
Out[*]:
Col1 Col2 Date CalendarValue X Y
0 A B 20200331 1D 1 2
0 A B 20200401 2D 3 4
0 A B 20200402 3D 5 6
1 AA BB 20210330 1Y 11 22
1 AA BB 20220330 2Y 33 44
1 AA BB 20230330 3Y 55 66
Regex Demo
我们今天的关于在Python熊猫中使用多个字符分隔符read_csv和python熊猫代码的分享就到这里,谢谢您的阅读,如果想了解更多关于delphi – 如何用多字符分隔符分割字符串?、Pandas的性能差异read_table,read_csv,from_csv和read_excel?、Python Pandas教程之使用 pandas.read_csv() 读取 csv、Python - CSV 文件中的列包含多个分隔符和结果的相关信息,可以在本站进行搜索。
本文标签: