当前位置: 首页 > news >正文

Python酷库之旅-第三方库Pandas(006)

目录

一、用法精讲

10、pandas.DataFrame.to_excel函数

10-1、语法

10-2、参数

10-3、功能

10-4、返回值

10-5、说明

10-6、用法

10-6-1、数据准备

10-6-2、代码示例

10-6-3、结果输出

11、pandas.ExcelFile类

11-1、语法

11-2、参数

11-3、功能

11-4、返回值

11-5、说明

11-5-1、文件访问

11-5-2、工作表操作

11-5-3、高级操作

11-6、用法

11-6-1、数据准备

11-6-2、代码示例

11-6-3、结果输出 

12、pandas.ExcelFile.parse函数

12-1、语法

12-2、参数

12-3、功能

12-4、返回值

12-4-1、单个工作表

12-4-2、多个工作表

12-4-3、所有工作表

12-5、说明

12-6、用法

12-6-1、数据准备

12-6-2、代码示例

12-6-3、结果输出 

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

10、pandas.DataFrame.to_excel函数
10-1、语法
# 10、pandas.DataFrame.to_excel函数
DataFrame.to_excel(excel_writer, *, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None, merge_cells=True, inf_rep='inf', freeze_panes=None, storage_options=None, engine_kwargs=None)
Write object to an Excel sheet.To write a single object to an Excel .xlsx file it is only necessary to specify a target file name. To write to multiple sheets it is necessary to create an ExcelWriter object with a target file name, and specify a sheet in the file to write to.Multiple sheets may be written to by specifying unique sheet_name. With all data written to the file it is necessary to save the changes. Note that creating an ExcelWriter object with a file name that already exists will result in the contents of the existing file being erased.Parameters:
excel_writerpath-like, file-like, or ExcelWriter object
File path or existing ExcelWriter.sheet_namestr, default ‘Sheet1’
Name of sheet which will contain DataFrame.na_repstr, default ‘’
Missing data representation.float_formatstr, optional
Format string for floating point numbers. For example float_format="%.2f" will format 0.1234 to 0.12.columnssequence or list of str, optional
Columns to write.headerbool or list of str, default True
Write out the column names. If a list of string is given it is assumed to be aliases for the column names.indexbool, default True
Write row names (index).index_labelstr or sequence, optional
Column label for index column(s) if desired. If not specified, and header and index are True, then the index names are used. A sequence should be given if the DataFrame uses MultiIndex.startrowint, default 0
Upper left cell row to dump data frame.startcolint, default 0
Upper left cell column to dump data frame.enginestr, optional
Write engine to use, ‘openpyxl’ or ‘xlsxwriter’. You can also set this via the options io.excel.xlsx.writer or io.excel.xlsm.writer.merge_cellsbool, default True
Write MultiIndex and Hierarchical Rows as merged cells.inf_repstr, default ‘inf’
Representation for infinity (there is no native representation for infinity in Excel).freeze_panestuple of int (length 2), optional
Specifies the one-based bottommost row and rightmost column that is to be frozen.storage_optionsdict, optional
Extra options that make sense for a particular storage connection, e.g. host, port, username, password, etc. For HTTP(S) URLs the key-value pairs are forwarded to urllib.request.Request as header options. For other URLs (e.g. starting with “s3://”, and “gcs://”) the key-value pairs are forwarded to fsspec.open. Please see fsspec and urllib for more details, and for more examples on storage options refer here.New in version 1.2.0.engine_kwargsdict, optional
Arbitrary keyword arguments passed to excel engine.
10-2、参数

10-2-1、excel_writer(必须)字符串、ExcelWriter对象或路径对象,可以是文件名(字符串或路径对象)或ExcelWriter对象。如果是文件名,则文件将被打开并以写入模式('w')打开,如果文件已存在则会被覆盖;如果传入的是ExcelWriter对象,则使用该对象来写入文件。

10-2-2、sheet_name(可选,默认值为'Sheet1')字符串,指定要写入的Excel工作表的名称。

10-2-3、na_rep(可选,默认值为'')字符串,用于替换DataFrame中缺失值(NaN)的字符串。

10-2-4、float_format(可选,默认值为None)字符串,用于格式化浮点数的格式字符串,例如 '%.2f' 会将浮点数格式化为带有两位小数的字符串。

10-2-5、columns(可选,默认值为None)序列,要写入文件的列名列表。如果为None(默认值),则写入所有列。

10-2-6、header(可选,默认值为True)布尔值或序列,如果为False,则不写入列名(即不写入DataFrame的header);如果是一个序列,则假定它是列名的别名列表。

10-2-7、index(可选,默认值为True)布尔值,如果为True,则写入行索引(即DataFrame的 index)作为一列;如果为False,则不写入行索引。

10-2-8、index_label(可选,默认值为None)字符串或序列,如果指定了索引,并且header和index都为True,则这些值将被用作索引列的列标题;如果未指定,则使用索引的名称(如果有的话)。

10-2-9、startrow/startcol(可选,默认值为0)整数,指定从哪个行和列开始写入数据(以0为索引),这对于在现有工作表中追加数据很有用。

10-2-10、engine(可选,默认值为None)字符串,指定用于写入Excel文件的引擎。pandas 支持多种引擎,如'xlsxwriter'、'openpyxl'和'xlwt'(仅用于较旧的.xls格式)。如果未指定,则pandas会尝试根据文件扩展名选择适当的引擎。

10-2-11、merge_cells(可选,默认值为True)布尔值,如果为True,则合并Excel文件中相同数据的单元格(例如,如果DataFrame中的某些列包含完全相同的值)。

10-2-12、inf_rep(可选,默认值为'inf')字符串,用于替换DataFrame中无限大值(inf)的字符串。

10-2-13、freeze_panes(可选,默认值为None)元组,指定要冻结的窗格的位置。元组应该包含两个整数,分别表示要冻结的行数和列数(从0开始计数),这对于创建具有固定标题行或列的大型Excel文件很有用。

10-2-14、storage_options(可选,默认值为None)字典,用于传递给底层文件存储接口的额外参数,这可以用于设置例如访问令牌、临时存储路径等。

10-2-15、engine_kwargs(可选,默认值为None)一个字典,包含传递给ExcelWriter引擎的额外关键字参数,这可以用于定制引擎的行为,例如设置工作簿的属性。

10-3、功能

        用于将DataFrame数据保存为Excel文件。

10-4、返回值

        没有直接的返回值。它的主要作用是将DataFrame中的数据写入到指定的Excel文件中,而不是返回一个结果或对象。

10-5、说明

        无

10-6、用法
10-6-1、数据准备
10-6-2、代码示例
# 10、pandas.DataFrame.to_excel函数
import pandas as pd
# 创建一个示例DataFrame
data = {'Name': ['Myelsa', 'Bryce', 'Jimmy'], 'Age': [25, 30, 35], 'Salary': [50000, 60000, 70000]}
df = pd.DataFrame(data)
# 将DataFrame保存为Excel文件
df.to_excel('example.xlsx', sheet_name='sheet', index=False)
10-6-3、结果输出

11、pandas.ExcelFile
11-1、语法
# 11、pandas.ExcelFile类
class pandas.ExcelFile(path_or_buffer, engine=None, storage_options=None, engine_kwargs=None)
Class for parsing tabular Excel sheets into DataFrame objects.See read_excel for more documentation.Parameters:
path_or_bufferstr, bytes, path object (pathlib.Path or py._path.local.LocalPath),
A file-like object, xlrd workbook or openpyxl workbook. If a string or path object, expected to be a path to a .xls, .xlsx, .xlsb, .xlsm, .odf, .ods, or .odt file.enginestr, default None
If io is not a buffer or path, this must be set to identify io. Supported engines: xlrd, openpyxl, odf, pyxlsb, calamine Engine compatibility :xlrd supports old-style Excel files (.xls).openpyxl supports newer Excel file formats.odf supports OpenDocument file formats (.odf, .ods, .odt).pyxlsb supports Binary Excel files.calamine supports Excel (.xls, .xlsx, .xlsm, .xlsb) and OpenDocument (.ods) file formats.Changed in version 1.2.0: The engine xlrd now only supports old-style .xls files. When engine=None, the following logic will be used to determine the engine:If path_or_buffer is an OpenDocument format (.odf, .ods, .odt), then odf will be used.Otherwise if path_or_buffer is an xls format, xlrd will be used.Otherwise if path_or_buffer is in xlsb format, pyxlsb will be used.New in version 1.3.0.Otherwise if openpyxl is installed, then openpyxl will be used.Otherwise if xlrd >= 2.0 is installed, a ValueError will be raised.WarningPlease do not report issues when using xlrd to read .xlsx files. This is not supported, switch to using openpyxl instead.engine_kwargsdict, optional
Arbitrary keyword arguments passed to excel engine.
11-2、参数

11-2-1、path_or_buffer(可选,默认值为None)指定要写入的文件路径(字符串或路径对象)或任何文件状对象。如果为None,则输出将作为字符串返回,而不是写入文件。

11-2-2、engine(可选,默认值为None)字符串,用于解析Excel文件的引擎。常用的有openpyxl(对于.xlsx文件)和xlrd(对于较旧的.xls文件)。注意,xlrd从版本2.0.0开始不再支持.xlsx文件。

11-2-3、storage_options(可选,默认值为None)字典,对于支持的文件类型(如AWS S3、Google Cloud Storage),可以传递额外的存储选项。

11-2-4、engine_kwargs(可选,默认值为None)字典,传递给Excel读取引擎的额外关键字参数。

11-3、功能

        作为一个接口,用于读取存储在Excel文件中的数据。通过创建 ExcelFile 类的实例,用户可以方便地访问Excel文件中的不同工作表(sheets),并将这些数据加载到Pandas的DataFrame对象中,以便进行进一步的数据分析和处理。

11-4、返回值

        严格来说,pandas.ExcelFile类本身并不直接返回数据,而是创建了一个表示Excel文件的对象,这个对象提供了方法来读取文件中的数据,并将数据加载到DataFrame对象中。然而,如果我们从功能实现的角度来考虑,可以认为ExcelFile类“返回”了一个用于操作Excel文件的接口或上下文。

11-5、说明

        具体来说,ExcelFile类提供了以下功能:

11-5-1、文件访问

        它封装了对Excel文件的访问,使得用户可以通过一个统一的接口来读取文件中的数据。

11-5-2、工作表操作

        它允许用户选择性地读取文件中的一个或多个工作表,而无需将整个文件加载到内存中。

11-5-3、高级操作

        虽然ExcelFile类本身主要用于读取数据,但它提供的接口可以与Pandas的其他功能结合使用,以实现更复杂的数据处理和分析任务。

11-6、用法
11-6-1、数据准备

11-6-2、代码示例
# 11、pandas.ExcelFile类
import pandas as pd
# 创建一个ExcelFile对象
xls = pd.ExcelFile('Pandas_read_excel数据.xlsx', engine='openpyxl')
# 通过ExcelFile对象读取工作表
df1 = pd.read_excel(xls, sheet_name='生产日报')
df2 = pd.read_excel(xls, sheet_name='Sheet2')
print(df1)
print()
print(df2)# 重要属性:pandas.ExcelFile.sheet_names
import pandas as pd
# 创建一个ExcelFile对象
xls = pd.ExcelFile('Pandas_read_excel数据.xlsx')
# 获取所有工作表的名称
sheet_names = xls.sheet_names
# 打印工作表名称
print(sheet_names)
# 假设你想要读取名为 'Sheet2' 的工作表
df = pd.read_excel(xls, sheet_name='Sheet2')  # 注意这里我们直接将ExcelFile对象传递给 pd.read_excel()
# 或者,如果你已经通过ExcelFile对象获取了DataFrame,你可以这样做:
# df = xls.parse('Sheet1')
# 打印DataFrame的前几行来验证数据
print(df.head())
11-6-3、结果输出 
# 11、pandas.ExcelFile类
#          生产日期 班别  机台 设备品牌       设备型号  ... 生产周期(s)  单重(g)  包装规格 当班产量(pc) 当日库存(pc)
# 0  2024-07-04  A   1  YZM   UN160SM2  ...    38.0  23.40   506     3236    12148
# 1  2024-07-04  A   3  YZM   UN160SM2  ...    38.6  15.80   612     2448   120000
# 2  2024-07-04  A   5  YZM     UN160A  ...    30.1   2.85  2500     4800     2205
# 3  2024-07-04  A   7  NaN     UN120A  ...    28.6   2.40  3500     8500    31244
# 4  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     2800      417
# 5  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     3000      312
# 6  2024-07-04  A  12   HT     HA2600  ...    23.2   8.80  1000    14500   143100
# 7  2024-07-04  A  13   HH    HM260M3  ...    44.7  18.50   600     3000    38526
# 8  2024-07-04  A  14   HH  DL260-llS  ...    43.5  68.20    85     2516     4964
# 9  2024-07-04  B   1  YZM   UN160SM2  ...    38.0  23.40   506     1518    12148
# 10 2024-07-04  B   2  YZM   UN160SM2  ...    34.6  10.40   896     3984    85236
# 11 2024-07-04  B   5  YZM     UN160A  ...    30.1   2.85  2500     6200     2205
# 12 2024-07-04  B   7  YZM     UN120A  ...    28.6   2.40  3500     8500    31244
# 13 2024-07-04  B   8   ZD    EM150-V  ...    33.0   4.60  3000     5800      263
# 14 2024-07-04  B  12   HT     HA2600  ...    23.2   8.80  1000    14800   143100
# 15 2024-07-04  B  13   HH    HM260M3  ...    44.7  18.50   600     2448    38526
# 16 2024-07-04  B  14   HH  DL260-llS  ...    43.5  68.20    85     1518     4964
# 
# [17 rows x 16 columns]
# 
#          生产日期 班别  机台 设备品牌       设备型号  ... 生产周期(s)  单重(g)  包装规格 当班产量(pc) 当日库存(pc)
# 0  2024-07-04  A   1  YZM   UN160SM2  ...    38.0  23.40   506     3236    12148
# 1  2024-07-04  A   3  YZM   UN160SM2  ...    38.6  15.80   612     2448   120000
# 2  2024-07-04  A   5  YZM     UN160A  ...    30.1   2.85  2500     4800     2205
# 3  2024-07-04  A   7  NaN     UN120A  ...    28.6   2.40  3500     8500    31244
# 4  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     2800      417
# 5  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     3000      312
# 6  2024-07-04  A  12   HT     HA2600  ...    23.2   8.80  1000    14500   143100
# 7  2024-07-04  A  13   HH    HM260M3  ...    44.7  18.50   600     3000    38526
# 8  2024-07-04  A  14   HH  DL260-llS  ...    43.5  68.20    85     2516     4964
# 9  2024-07-04  B   1  YZM   UN160SM2  ...    38.0  23.40   506     1518    12148
# 10 2024-07-04  B   2  YZM   UN160SM2  ...    34.6  10.40   896     3984    85236
# 11 2024-07-04  B   5  YZM     UN160A  ...    30.1   2.85  2500     6200     2205
# 12 2024-07-04  B   7  YZM     UN120A  ...    28.6   2.40  3500     8500    31244
# 13 2024-07-04  B   8   ZD    EM150-V  ...    33.0   4.60  3000     5800      263
# 14 2024-07-04  B  12   HT     HA2600  ...    23.2   8.80  1000    14800   143100
# 15 2024-07-04  B  13   HH    HM260M3  ...    44.7  18.50   600     2448    38526
# 16 2024-07-04  B  14   HH  DL260-llS  ...    43.5  68.20    85     1518     4964
# 
# [17 rows x 16 columns]# 重要属性:pandas.ExcelFile.sheet_names
# ['生产日报', 'Sheet2']
#         生产日期 班别  机台 设备品牌      设备型号  ... 生产周期(s)  单重(g)  包装规格 当班产量(pc) 当日库存(pc)
# 0 2024-07-04  A   1  YZM  UN160SM2  ...    38.0  23.40   506     3236    12148
# 1 2024-07-04  A   3  YZM  UN160SM2  ...    38.6  15.80   612     2448   120000
# 2 2024-07-04  A   5  YZM    UN160A  ...    30.1   2.85  2500     4800     2205
# 3 2024-07-04  A   7  NaN    UN120A  ...    28.6   2.40  3500     8500    31244
# 4 2024-07-04  A   8   ZD   EM150-V  ...    33.0   4.60  3000     2800      417
# 
# [5 rows x 16 columns]
12、pandas.ExcelFile.parse函数
12-1、语法
# 12、pandas.ExcelFile.parse函数
ExcelFile.parse(sheet_name=0, header=0, names=None, index_col=None, usecols=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, parse_dates=False, date_parser=_NoDefault.no_default, date_format=None, thousands=None, comment=None, skipfooter=0, dtype_backend=_NoDefault.no_default, **kwds)
Parse specified sheet(s) into a DataFrame.Equivalent to read_excel(ExcelFile, …) See the read_excel docstring for more info on accepted parameters.Returns:
DataFrame or dict of DataFrames
DataFrame from the passed in Excel file.
12-2、参数

12-2-1、sheet_name(可选,默认值为0)指定要解析的工作表的名称、索引或工作表对象,如果是整数,则表示按索引顺序选择工作表(从0开始);如果是字符串,则表示按名称选择工作表;如果是列表,则表示解析列表中指定名称或索引的所有工作表,返回一个字典,键为工作表名,值为对应的DataFrame;如果为None,则返回第一个工作表。

12-2-2、header(可选,默认值为0)指定用作列名的行,如果文件不包含列标题,则应该设置为None并使用names参数。默认为0,即第一行作为列标题。

12-2-3、names(可选,默认值为None)用于结果的列名的列表,如果文件不包含列标题行,则需要提供此参数。

12-2-4、index_col(可选,默认值为None)用作行索引的列编号或列名,可以是整数、列名字符串或列名的列表。如果为None(默认),则使用从0开始的整数索引。

12-2-5、usecols(可选,默认值为None)返回一个子集的列。默认情况下,解析所有列;如果为整数列表,则返回这些位置的列;如果为字符串列表,则返回这些名称的列。

12-2-6、converters(可选,默认值为None)列的转换器字典。键可以是列名或列的索引(从0开始)。

12-2-7、true_values/false_values(可选,默认值为None)用于将字符串值转换为布尔值的序列。

12-2-8、skiprows(可选,默认值为None)需要跳过的行号列表(从0开始),或跳过文件开头的行数。

12-2-9、nrows(可选,默认值为None)需要读取的行数(从文件开始算起)。

12-2-10、na_values(可选,默认值为None)附加识别为NA/missing的字符串列表。

12-2-11、parse_dates(可选,默认值为False)尝试将数据解析为日期。

12-2-12、date_parser(可选)用于解析日期的函数。

12-2-13、date_format(可选,默认值为None)字符串或字符串列表,用于指定日期/时间的格式。

12-2-14、thousands(可选,默认值为None)千位分隔符。

12-2-15、comment(可选,默认值为None)标识注释字符的开始,行中该字符之后的部分将被忽略。如果为None(默认值),则不忽略任何行。

12-2-16、skipfooter(可选,默认值为0)从文件末尾跳过的行数(不支持迭代或分块读取)。

12-2-17、dtype_backend(可选)指定用于处理数据类型的后端,这通常不需要用户直接设置,因为pandas会根据文件内容和提供的其他参数自动选择适当的后端。

12-2-18、**kwds(可选)接受一些额外的关键字参数,这些参数将直接传递给底层的Excel读取器(如openpyxl、xlrd等,具体取决于文件类型和安装的库),这些额外的关键字参数允许用户进行更细粒度的控制,比如设置读取器的特定选项。

12-3、功能

        用于从ExcelFile对象中读取特定工作表(sheet)内容的方法。

12-4、返回值

ExcelFile.parse()函数的返回值取决于传递给它的sheet_name参数:

12-4-1、单个工作表

        如果sheet_name是一个字符串或整数,表示要读取的工作表的名称或索引,则函数返回一个DataFrame对象,该对象包含了指定工作表中的数据。

12-4-2、多个工作表

        如果sheet_name是一个整数列表或字符串列表,表示要读取的多个工作表的名称或索引,则函数返回一个字典(Dict of DataFrames),其中键是工作表的名称,值是对应的数据框(DataFrame)。

12-4-3、所有工作表

        如果sheet_name被设置为None,则函数会读取Excel文件中的所有工作表,并返回一个字典(Dict of DataFrames),其中包含了所有工作表的数据。

12-5、说明

        无

12-6、用法
12-6-1、数据准备

12-6-2、代码示例
# 12、pandas.ExcelFile.parse函数
# 12-1、读取Excel文件中的数据
import pandas as pd
# 假设Pandas_read_excel数据.xlsx文件与你的Python脚本位于同一目录下
file_path = 'Pandas_read_excel数据.xlsx'
# 使用 ExcelFile 类打开 Excel 文件
with pd.ExcelFile(file_path) as xls:# 使用parse()方法读取名为"Sheet2"的工作表# 这里我们没有指定太多额外的参数,因为假设Excel文件格式相对简单df = xls.parse(sheet_name='Sheet2')
# 显示读取到的 DataFrame
print(df)# 12-2、如果你的Excel文件包含多个工作表,并且你想要读取所有工作表到一个字典中,其中键是工作表名,值是对应的DataFrame
import pandas as pd
file_path = 'Pandas_read_excel数据.xlsx'
# 使用ExcelFile类打开Excel文件
with pd.ExcelFile(file_path) as xls:# 读取所有工作表到一个字典中sheet_name_to_df_map = {sheet_name: xls.parse(sheet_name) for sheet_name in xls.sheet_names}
# 显示指定工作表的数据
print(sheet_name_to_df_map['Sheet2'])
12-6-3、结果输出 
# 12-1、读取Excel文件中的数据
#          生产日期 班别  机台 设备品牌       设备型号  ... 生产周期(s)  单重(g)  包装规格 当班产量(pc) 当日库存(pc)
# 0  2024-07-04  A   1  YZM   UN160SM2  ...    38.0  23.40   506     3236    12148
# 1  2024-07-04  A   3  YZM   UN160SM2  ...    38.6  15.80   612     2448   120000
# 2  2024-07-04  A   5  YZM     UN160A  ...    30.1   2.85  2500     4800     2205
# 3  2024-07-04  A   7  NaN     UN120A  ...    28.6   2.40  3500     8500    31244
# 4  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     2800      417
# 5  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     3000      312
# 6  2024-07-04  A  12   HT     HA2600  ...    23.2   8.80  1000    14500   143100
# 7  2024-07-04  A  13   HH    HM260M3  ...    44.7  18.50   600     3000    38526
# 8  2024-07-04  A  14   HH  DL260-llS  ...    43.5  68.20    85     2516     4964
# 9  2024-07-04  B   1  YZM   UN160SM2  ...    38.0  23.40   506     1518    12148
# 10 2024-07-04  B   2  YZM   UN160SM2  ...    34.6  10.40   896     3984    85236
# 11 2024-07-04  B   5  YZM     UN160A  ...    30.1   2.85  2500     6200     2205
# 12 2024-07-04  B   7  YZM     UN120A  ...    28.6   2.40  3500     8500    31244
# 13 2024-07-04  B   8   ZD    EM150-V  ...    33.0   4.60  3000     5800      263
# 14 2024-07-04  B  12   HT     HA2600  ...    23.2   8.80  1000    14800   143100
# 15 2024-07-04  B  13   HH    HM260M3  ...    44.7  18.50   600     2448    38526
# 16 2024-07-04  B  14   HH  DL260-llS  ...    43.5  68.20    85     1518     4964
# 
# [17 rows x 16 columns]# 12-2、如果你的Excel文件包含多个工作表,并且你想要读取所有工作表到一个字典中,其中键是工作表名,值是对应的DataFrame
#          生产日期 班别  机台 设备品牌       设备型号  ... 生产周期(s)  单重(g)  包装规格 当班产量(pc) 当日库存(pc)
# 0  2024-07-04  A   1  YZM   UN160SM2  ...    38.0  23.40   506     3236    12148
# 1  2024-07-04  A   3  YZM   UN160SM2  ...    38.6  15.80   612     2448   120000
# 2  2024-07-04  A   5  YZM     UN160A  ...    30.1   2.85  2500     4800     2205
# 3  2024-07-04  A   7  NaN     UN120A  ...    28.6   2.40  3500     8500    31244
# 4  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     2800      417
# 5  2024-07-04  A   8   ZD    EM150-V  ...    33.0   4.60  3000     3000      312
# 6  2024-07-04  A  12   HT     HA2600  ...    23.2   8.80  1000    14500   143100
# 7  2024-07-04  A  13   HH    HM260M3  ...    44.7  18.50   600     3000    38526
# 8  2024-07-04  A  14   HH  DL260-llS  ...    43.5  68.20    85     2516     4964
# 9  2024-07-04  B   1  YZM   UN160SM2  ...    38.0  23.40   506     1518    12148
# 10 2024-07-04  B   2  YZM   UN160SM2  ...    34.6  10.40   896     3984    85236
# 11 2024-07-04  B   5  YZM     UN160A  ...    30.1   2.85  2500     6200     2205
# 12 2024-07-04  B   7  YZM     UN120A  ...    28.6   2.40  3500     8500    31244
# 13 2024-07-04  B   8   ZD    EM150-V  ...    33.0   4.60  3000     5800      263
# 14 2024-07-04  B  12   HT     HA2600  ...    23.2   8.80  1000    14800   143100
# 15 2024-07-04  B  13   HH    HM260M3  ...    44.7  18.50   600     2448    38526
# 16 2024-07-04  B  14   HH  DL260-llS  ...    43.5  68.20    85     1518     4964
# 
# [17 rows x 16 columns]

二、推荐阅读

1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页

相关文章:

Python酷库之旅-第三方库Pandas(006)

目录 一、用法精讲 10、pandas.DataFrame.to_excel函数 10-1、语法 10-2、参数 10-3、功能 10-4、返回值 10-5、说明 10-6、用法 10-6-1、数据准备 10-6-2、代码示例 10-6-3、结果输出 11、pandas.ExcelFile类 11-1、语法 11-2、参数 11-3、功能 11-4、返回值 …...

智慧矿山:EasyCVR助力矿井视频多业务融合及视频转发服务建设

一、方案背景 随着矿井安全生产要求的不断提高,视频监控、数据传输、通讯联络等业务的需求日益增长。为满足矿井生产管理的多元化需求,提高矿井作业的安全性和效率,TSINGSEE青犀EasyCVR视频汇聚/安防监控综合管理平台,旨在构建一…...

Unix/Linux shell实用小程序1:生字本

前言 在日常工作学习中,我们会经常遇到一些不认识的英语单词,于时我们会打开翻译网站或者翻译软件进行查询,但是大部分工具没有生词本的功能,而有生字本的软件又需要注册登陆,免不了很麻烦,而且自己的数据…...

springboot2.7.6 集成swagger

在 Spring Boot 2.7.6 版本中集成 Swagger 的步骤相对直接,主要涉及添加依赖、编写配置以及在控制器中添加文档注解几个环节。 下面是集成 Swagger 的基本步骤: 1. 添加依赖 首先,在pom.xml文件中添加 Swagger 相关依赖。 对于 Spring Boot…...

面试篇-系统设计题总结

文章目录 1、设计一个抢红包系统1.1 高可用的解决方案:1.2 抢红包系统的设计1.3 其他 2、秒杀系统设计 这里记录一些有趣的系统设计类的题目,一般大家比较喜欢出的设计类面试题目会和高可用系统相关比如秒杀和抢红包等。欢迎大家在评论中评论自己遇到的题…...

如何摆脱反爬虫机制?

在网站设计时,为了保证服务器的稳定运行,防止非法数据访问,通常会引入反爬虫机制。一般来说,网站的反爬虫机制包括以下几种: 1. CAPTCHA:网站可能会向用户显示CAPTCHA,要求他们在访问网站或执行…...

68745

877454...

github仓库的基本使用-创建、上传文件、删除

1.第一步 先点击左侧菜单栏的远程仓库 2.点击NEW 3.创建仓库 然后点击右下角的 CREATE 4.点击code 点击SSH,然后我出现了You don’t have any public SSH keys in your GitHub account. You can add a new public key, or try cloning this repository via HTTPS. 1&#xff…...

[课程][原创]opencv图像在C#与C++之间交互传递

opencv图像在C#与C之间交互传递 课程地址:https://edu.csdn.net/course/detail/39689 无限期视频有效期 课程介绍课程目录讨论留言 你将收获 学会如何封装C的DLL 学会如何用C#调用C的DLL 掌握opencv在C#和C传递思路 学会如何配置C的opencv 适用人群 拥有C#…...

科研绘图系列:R语言双侧条形图(bar Plot)

介绍 双侧条形图上的每个条形代表一个特定的细菌属,条形的高度表示该属的LDA得分的对数值,颜色用来区分不同的分类群或组别,它具有以下优点: 可视化差异:条形图可以直观地展示不同细菌属在得分上的差异。强调重要性:较高的条形表示某些特征在区分不同组别中具有重要作用…...

计算机未来大方向的选择

选专业要了解自己的兴趣所在。 即想要学习什么样的专业,如果有明确的专业意向,就可以有针对性地选择那些专业实力较强的院校。 2.如果没有明确的专业意向,可以优先考虑一下院校。 确定一下自己想要选择综合性院校还是理工类院校或是像财经或者…...

AndroidKille不能用?更新apktool插件-cnblog

AndroidKiller不更新插件容易报错 找到apktool管理器 填入apktool位置,并输入apktool名字 选择默认的apktool版本 x掉,退出重启 可以看到反编译完成了...

非参数检测2——定义

定义:若研究二判定问题(即判断有无信号)的检测问题, 检测器的虚警概率可以由对输入数据统计特性提出微弱假设确定假设中不包含输入噪声的统计特性 则称该检测器为非参数检测器。 设计目标 在未知或时变环境下,有最…...

iOS多target时怎么对InfoPlist进行国际化

由于不同target要显示不同的App名称、不同的权限提示语,国际化InfoPlist文件必须创建名称为InfoPlist.strings的文件,那么多个target时怎么进行国际化呢?步骤如下: 一、首先我们在项目根目录创建不同的文件夹对应多个不同的targe…...

TZDYM001矩阵系统源码 矩阵营销系统多平台多账号一站式管理

外面稀有的TZDYM001矩阵系统源码,矩阵营销系统多平台多账号一站式管理,一键发布作品。智能标题,关键词优化,排名查询,混剪生成原创视频,账号分组,意向客户自动采集,智能回复&#xf…...

你的 Mac 废纸篓都生苍蝇啦

今天给大家推荐个免费且有趣的小工具 BananaBin,它可以在你的废纸篓上“长”一些可爱的苍蝇🪰。 软件介绍 BananaBin 是 macOS 上的一款有趣实用工具,当你的垃圾桶满了时,它会提醒你清理。这个软件通过在垃圾桶上添加互动的苍蝇…...

推出新的C2000™ F28P65x 实时微控制器,专为高效控制电力电子产品而构建(F28P650DH、F28P650DK、F28P650SH)

C2000™ F28P65x 实时微控制器是集中级性能、PWM 和模拟创新与系统成本优化等优势于一身。 F28P65x 系列是 C2000™ 实时微控制器 (MCU) 系列的中级性能系列产品,专为高效控制电力电子产品而构建。凭借超低延迟,F28P65x 通过更多的模拟功能和新的 PWM 功…...

使用Java实现分布式日志系统

使用Java实现分布式日志系统 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在分布式系统中,日志记录是一项至关重要的任务。它不仅用于故障排查和…...

Java 基础查漏补缺

1.深入解读:JDK与JRE的区别 JDK提供了完整的Java开发工具和资源,包括编译器、调试器和其他开发工具,满足开发人员的各种需求。 JRE则相对更为基础,它只提供了Java程序运行所需的环境,包含了Java虚拟机(JVM&…...

甲骨文首次将LLMs引入数据库,集成Llama 3和Mistral,和数据库高效对话

信息时代,数据为王。数据库作为数据存储&管理的一种方式,正在以势不可挡的趋势与AI结合。 前有OpenAI 收购了数据库初创公司 Rockset,引发广泛关注;Oracle公司(甲骨文)作为全球最大的信息管理软件及服…...

HumbleBundle7月虚幻捆绑包30件军事题材美术模型沙漠自然环境大逃杀模块化建筑可定制武器包二战现代坦克飞机道具丧尸士兵角色模型20240705

HumbleBundle7月虚幻捆绑包30件军事题材美术模型沙漠自然环境大逃杀模块化建筑可定制武器包二战现代坦克飞机道具丧尸士兵角色模型202407051607 这次HumbleBundle捆绑包是UE虚幻军事题材的,内容非常多。 有军事基地、赛博朋克街区、灌木丛景观环境等 HB捆绑包虚幻…...

SQL 别名

SQL 别名 在SQL(Structured Query Language)中,别名是一种常用的技术,用于给表或列指定一个临时的名称,以便在查询中使用。这种技术可以提高查询的可读性,使查询更加清晰和易于理解。本文将详细介绍SQL别名的概念、用途、语法以及在不同场景下的应用示例。 1. 什么是SQ…...

浅谈反射机制

1. 何为反射? 反射(Reflection)机制指的是程序在运行的时候能够获取自身的信息。具体来说,反射允许程序在运行时获取关于自己代码的各种信息。如果知道一个类的名称或者它的一个实例对象, 就能把这个类的所有方法和变…...

解决obsidian加粗中文字体显示不突出的问题

加粗字体显示不突出的原因:默认字体的加粗版本本来就不突出 解决方法:改成显示突出的类型Microsoft YaHei UI 【效果】 修改前:修改后: 其他方法: 修改css(很麻烦,改半天也不一定奏效&#…...

Shell echo命令

Shell echo命令 在Shell编程中,echo命令是一个常用的内置命令,用于在终端或控制台上显示文本或变量的值。它是与用户交互的一种基本方式,经常用于输出信息、创建文件内容或与脚本的其他部分进行通信。本文将详细介绍echo命令的用法、选项和实际应用示例。 基本用法 echo命…...

级联目标检测:构建高效目标识别的多阶段策略

标题:级联目标检测:构建高效目标识别的多阶段策略 级联目标检测(Cascade Object Detection)是一种多阶段的目标检测方法,它通过一系列逐渐细化的分类器来提高检测的准确性和效率。这种技术通常用于处理计算资源受限的…...

this指向问题以及如何改变指向

当在Vue.js中讨论"this"的指向问题时,有几个重要的方面需要考虑,特别是在组件化开发和异步操作中: 1. 普通函数 vs 箭头函数 在JavaScript中,普通函数和箭头函数对于"this"的处理方式有显著区别:…...

基于.NET开源游戏框架MonoGame实现的开源项目合集

前言 今天分享一些基于.NET开源游戏框架MonoGame实现的开源项目合集。 MonoGame项目介绍 MonoGame是一个简单而强大的.NET框架,使用C#编程语言可以创建桌面PC、视频游戏机和移动设备游戏。它已成功用于创建《怒之铁拳4》、《食肉者》、《超凡蜘蛛侠》、《星露谷物…...

spring boot + vue3+element plus 项目搭建

一、vue 项目搭建 1、创建 vue 项目 vue create vue-element说明:创建过程中可以选择路由,也可也可以不选择,可以通过 npm install 安装 vue 项目目录结构 说明:api 为自己创建的文件夹,router 选择路由模块会自动…...

linux之管道重定向

管道与重定向 一、重定向 将原输出结果存储到其他位置的过程 标准输入、标准正确输出、标准错误输出 ​ 进程在运行的过程中根据需要会打开多个文件,每打开一个文件会有一个数字标识。这个标识叫文件描述符。 进程使用文件描述符来管理打开的文件(FD--…...

to_json 出现乱码的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

Java接口和类

package chapter04;public class Java22_Object_接口 {public static void main(String[] args) {// TODO 面向对象 - 接口// 所谓的接口,可以简单理解为规则、规范// 基本语法:interface 接口名称 { 规则属性,规则的行为 }// 接口其实是抽象…...

前端文件预览汇总

一、vue中预览word、excel、pdf: vue-office vue-office支持多种文件(docx、excel、pdf)预览的vue组件库,支持vue2/3,也支持非Vue框架的预览。 特点: 一站式:提供word(.docx)、pdf、excel(.xlsx, .xls)多种文档在线…...

银河麒麟V10 安装tigervncserver

银河麒麟V10 安装tigervncserver 银河麒麟V10安装tigervnc-server步骤: 提示,本安装环境:arm飞腾2000,主机开机进入root用户模式。 1、安装server安装包 #rpm -i tigervnc-server-1.10.1-5.p05.ky10.aarch64.rpm 2、控制台输入 …...

SKM Power*Tools 10.0

SKM Power*Tools 10.0是功能强大的电气电力系统分析设计解决方案!综合软件提供强大的功能和领先的技术,在检查、计算、负载分配、流量、瞬态稳定性等多个方面提供领先的支持,可对不同的安全设备、系统进行评估分析和比较,使用 Pow…...

查看视频时间基 time_base

时间基、codec, 分辨率,音频和视频的都一样,才可以直接使用ffmpeg -f concat -i file.txt 方式合并。 On Thu, Dec 03, 2015 at 21:54:53 0200, redneb8888 wrote: I am looking for a way to find the time base of a stream (video or audio), $ ffpr…...

数据结构 —— 最小生成树

数据结构 —— 最小生成树 什么是最小生成树Kruskal算法Prim算法 今天我们来看一下最小生成树: 我们之前学习的遍历算法并没有考虑权值,仅仅就是遍历结点: 今天的最小生成树要满足几个条件: 考虑权值所有结点联通权值之和最小无环…...

初学Spring之 JavaConfig 实现配置

使用 Java 方式配置 Spring 写个实体类: Component 表示这个类被 Spring 接管了,注册到了容器中 package com.demo.pojo;import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component;Component //…...

在Java项目中实现实时日志分析

在Java项目中实现实时日志分析 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 随着互联网应用的发展,实时日志分析成为了保证系统稳定性、性能优化…...

Git基础知识与常用命令指南

这是一个Git基础知识和常用命令的简要指南,涵盖了日常开发中最常用的操作。你可以将这个指南保存下来,作为日常工作的参考。 目录 基础篇1. Git基本概念2. 配置Git3. 创建仓库4. 基本的工作流程5. 分支操作6. 查看历史7. 撤销更改8. 远程仓库操作 Git进阶知识与技巧指南1. 分…...

第8章:Electron 剪贴版和消息通知

在本章中,我们将介绍如何在Electron应用中与操作系统进行集成。这些操作包括剪贴板操作、通知系统、原生对话框等功能。 8.1 剪贴板操作 Electron 提供了 clipboard 模块,允许我们在应用中访问和操作剪贴板内容。以下是一些基本的剪贴板操作示例。 8.…...

Android zygote访谈录

戳蓝字“牛晓伟”关注我哦! 用心坚持输出易读、有趣、有深度、高质量、体系化的技术文章,技术文章也可以有温度。 本文摘要 本文以访谈的方式来带大家了解zygote进程,了解zygote进程是啥?它的作用是啥?它是如何一步…...

nuxt、vue树形图d3.js

直接上代码 //安装 npm i d3 --save<template><div class"d3"><div :id"id" class"d3-content"></div></div> </template> <script> import * as d3 from "d3";export default {props: {d…...

香橙派AIpro测评:yolo8+usb鱼眼摄像头的Camera图像获取及识别

一、前言 近期收到了一块受到业界人士关注的开发板"香橙派AIpro",因为这块板子具有极高的性价比&#xff0c;同时还可以兼容ubuntu、安卓等多种操作系统&#xff0c;今天博主便要在一块832g的香橙派AI香橙派AIpro进行YoloV8s算法的部署并使用一个外接的鱼眼USB摄像头…...

大华设备接入GB28181视频汇聚管理平台EasyCVR安防监控系统的具体操作步骤

智慧城市/视频汇聚/安防监控平台EasyCVR兼容性强&#xff0c;支持多协议接入&#xff0c;包括国标GB/T 28181协议、GA/T 1400协议、部标JT808协议、RTMP、RTSP/Onvif协议、海康Ehome、海康SDK、大华SDK、华为SDK、宇视SDK、乐橙SDK、萤石云SDK等&#xff0c;并能对外分发RTMP、…...

Laravel包开发指南:构建可重用组件的艺术

标题&#xff1a;Laravel包开发指南&#xff1a;构建可重用组件的艺术 Laravel不仅是一个强大的Web应用框架&#xff0c;它的包&#xff08;Package&#xff09;系统也为开发者提供了构建和共享可重用组件的能力。通过包开发&#xff0c;开发者可以轻松地扩展Laravel的功能&am…...

JavaDS预备知识

集合框架 Java 集合框架 Java Collection Framework &#xff0c;又被称为容器 container &#xff0c;是定义在 java.util 包下的一组接口 interfaces和其实现类 classes 。 其主要表现为将多个元素 element 置于一个单元中&#xff0c;对数据进行创建(Create)、读取(Retrieve…...

日常学习--20240705

1、IO流 按照IO操作的数据类型分为字节流和字符流&#xff1a; 字节流&#xff1a;又分为输入流&#xff08;其他程序传递过来的数据&#xff0c;读取流中的数据&#xff09;和输出流&#xff08;往流中写数据&#xff0c;传递给其他程序&#xff09;;可以操作二进制文件&…...

Java中初始化一个List的多种方式

1.最原始的方式&#xff1a;先创建&#xff0c;然后再添加元素 List<String> list new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("cherry");2.使用Arrays.asList 这是一种快速方便的方式&#xff0c;直接…...

BeikeShop多国语言多货币商城系统源码基于Laravel框架

BeikeShop是基于 Laravel 开发的一款开源商城系统&#xff0c;支持多语言商城 多货币商城 100%全开源 ChatGPT OpenAI B2C商城系统 H5商城 PHP商城系统 商城源码 PC商城 跨境电商系统 跨境商城系统 电商商城系统 Laravel 10 框架开发系统&#xff0c;支持插件市场。 Event 机制…...