|
目录一、用法精讲401、pandas.Series.to_string方法401-1、语法401-2、参数401-3、功能401-4、返回值401-5、说明401-6、用法401-6-1、数据准备401-6-2、代码示例401-6-3、结果输出402、pandas.Series.to_clipboard方法402-1、语法402-2、参数402-3、功能402-4、返回值402-5、说明402-6、用法402-6-1、数据准备402-6-2、代码示例402-6-3、结果输出403、pandas.Series.to_latex方法403-1、语法403-2、参数403-3、功能403-4、返回值403-5、说明403-6、用法403-6-1、数据准备403-6-2、代码示例403-6-3、结果输出404、pandas.Series.to_markdown方法404-1、语法404-2、参数404-3、功能404-4、返回值404-5、说明404-6、用法404-6-1、数据准备404-6-2、代码示例404-6-3、结果输出405、pandas.DataFrame类405-1、语法405-2、参数405-3、功能405-4、返回值405-5、说明405-6、用法405-6-1、数据准备405-6-2、代码示例405-6-3、结果输出二、推荐阅读1、Python筑基之旅2、Python函数之旅3、Python算法之旅4、Python魔法之旅5、博客个人主页一、用法精讲401、pandas.Series.to_string方法401-1、语法#401、pandas.Series.to_string方法pandas.Series.to_string(buf=None,na_rep='NaN',float_format=None,header=True,index=True,length=False,dtype=False,name=False,max_rows=None,min_rows=None)RenderastringrepresentationoftheSeries.Parameters:bufStringIO-like,optionalBuffertowriteto.na_repstr,optionalStringrepresentationofNaNtouse,default‘NaN’.float_formatone-parameterfunction,optionalFormatterfunctiontoapplytocolumns’elementsiftheyarefloats,defaultNone.headerbool,defaultTrueAddtheSeriesheader(indexname).indexbool,optionalAddindex(row)labels,defaultTrue.lengthbool,defaultFalseAddtheSerieslength.dtypebool,defaultFalseAddtheSeriesdtype.namebool,defaultFalseAddtheSeriesnameifnotNone.max_rowsint,optionalMaximumnumberofrowstoshowbeforetruncating.IfNone,showall.min_rowsint,optionalThenumberofrowstodisplayinatruncatedrepr(whennumberofrowsisabovemax_rows).Returns:strorNoneStringrepresentationofSeriesifbuf=None,otherwiseNone.401-2、参数401-2-1、buf(可选,默认值为None):优先接收一个字符串缓冲区,若未提供,则返回字符串;如果提供了缓冲区,则方法将结果写入该缓冲区,而不是返回结果。401-2-2、na_rep(可选,默认值为'NaN'):用于表示缺失值的字符串,默认是'NaN',如果Series中含有缺失值(NaN),则可以使用此参数来定义替代显示字符串。401-2-3、float_format(可选,默认值为None):用于格式化浮点数的字符串,可以指定一个函数,用于处理浮点数的输出格式,例如lambdax:'%.2f'%x。401-2-4、header(可选,默认值为True):布尔值,指示是否在输出中包含Series的名称,如果Series有名称,则在输出中打印。401-2-5、index(可选,默认值为True):布尔值,指示是否在输出中包含索引列。401-2-6、length(可选,默认值为False):布尔值,指示是否输出Series的长度。401-2-7、dtype(可选,默认值为False):布尔值,指示是否在输出中包含数据类型信息。401-2-8、name(可选,默认值为False):布尔值,指示是否在输出中包含Series的名称。401-2-9、max_rows(可选,默认值为None):整数,用于指定显示的最大行数,如果Series的行数超过此值,则将以省略号表示。401-2-10、min_rows(可选,默认值为None):整数,用于指定显示的最小行数,即使Series的行数少于此值,仍然会显示。401-3、功能 以用户定义的方式格式化和显示Series对象,通过调整参数,用户可以自定义显示的内容和格式,从而使其更适合特定的输出需求。401-4、返回值 当buf参数为None时,此方法返回一个字符串,表示格式化后的Series内容;当提供了buf参数时,结果将被写入该缓冲区,方法本身返回None。401-5、说明 使用场景:401-5-1、数据审查:在数据清洗和预处理时,通常需要快速查看数据的摘要信息,使用该方法可以清晰地输出Series的内容,方便发现潜在的问题,如缺失值或异常值。401-5-2、报告生成:在生成数据分析报告时,可以将数据以美观的格式输出,该方法允许自定义缺失值的表示和浮点数的格式,从而帮助提升报告的可读性。401-5-3、日志记录:在数据处理过程中,可能需要将Series的状态记录到日志中,利用该方法可以快速构建记录信息,方便后续的审计和追踪。401-5-4、数据检查和调试:在编写复杂的数据处理代码时,快速显示Series的内容有助于调试,通过控制输出的行数和格式,可以专注于问题所在。401-5-5、输出到文件:当需要将结果输出到文件时,可以利用该方法将Series格式化后写入到文本文件中,以便后续处理或查看。401-6、用法401-6-1、数据准备无401-6-2、代码示例#401、pandas.Series.to_string方法#401-1、数据审查importpandasaspd#创建示例数据data=pd.Series([10,20,None,40,50],name="Scores")#审查数据print(data.to_string(na_rep='Missing'),end='\n\n')#401-2、报告生成importpandasaspd#创建示例数据data=pd.Series([1.2345,2.3456,3.4567],name="Measurements")#输出数据,以指定格式显示output=data.to_string(float_format=lambdax:f"{x:.2f}")print(output,end='\n\n')#401-3、日志记录importpandasaspdimportlogginglogging.basicConfig(level=logging.INFO)data=pd.Series([5,None,15],name="TransactionValues")#记录当前Series状态logging.info("Currenttransactionvalues:\n%s",data.to_string(na_rep='N/A'))#401-4、数据检查和调试importpandasaspd#创建一个大的Serieslarge_data=pd.Series(range(100))#检查前几行数据print(large_data.to_string(max_rows=10),end='\n\n')#401-5、输出到文件data=pd.Series([100,200,None,400],name="Sales")withopen('output.txt','w')asf:f.write(data.to_string(na_rep='Missing'))401-6-3、结果输出#401、pandas.Series.to_string方法#401-1、数据审查#010.0#120.0#2Missing#340.0#450.0#401-2、报告生成#01.23#12.35#23.46#401-3、日志记录#INFO:root:Currenttransactionvalues:#05.0#1N/A#215.0#401-4、数据检查和调试#00#11#22#33#44#..#9595#9696#9797#9898#9999#401-5、输出到文件#见图1图1:402、pandas.Series.to_clipboard方法402-1、语法#402、pandas.Series.to_clipboard方法pandas.Series.to_clipboard(*,excel=True,sep=None,**kwargs)Copyobjecttothesystemclipboard.Writeatextrepresentationofobjecttothesystemclipboard.ThiscanbepastedintoExcel,forexample.Parameters:excelbool,defaultTrueProduceoutputinacsvformatforeasypastingintoexcel.True,usetheprovidedseparatorforcsvpasting.False,writeastringrepresentationoftheobjecttotheclipboard.sepstr,default'\t'Fielddelimiter.**kwargsTheseparameterswillbepassedtoDataFrame.to_csv.402-2、参数402-2-1、excel(可选,默认值为True):布尔值,指定输出内容的格式,如果设置为True,则以Excel格式复制内容,这意味着将数据以制表符分隔;当设置为False,则输出的数据将以其他形式复制(例如纯文本),适用于纯文本编辑器。402-2-2、sep(可选,默认值为None):字符串,指定分隔符,默认情况下,当excel=True时,使用制表符作为分隔符;如果您需要使用其他分隔符(如逗号或分号),可以在此参数中指定。402-2-3、**kwargs(可选):其他参数,可传递给to_string方法,例如header、index等,这些参数用于控制Series的输出格式,如是否包含索引和。402-3、功能 将Series对象的内容复制到剪贴板,方便在其他应用程序(如电子表格软件、文本编辑器等)中使用;支持Excel格式的输出,能够方便地在数据分析工作流中进行数据的临时共享和处理。402-4、返回值 该方法没有返回值(返回None),主功能是将数据复制到剪贴板。402-5、说明 无402-6、用法402-6-1、数据准备无402-6-2、代码示例#402、pandas.Series.to_clipboard方法importpandasaspd#创建一个示例Seriesdata=pd.Series([1,2,3,4],name="Numbers")#将Series复制到剪贴板data.to_clipboard(excel=True,sep='\t')#现在可以在Excel或文本编辑器中粘贴402-6-3、结果输出无403、pandas.Series.to_latex方法403-1、语法#403、pandas.Series.to_latex方法pandas.Series.to_latex(buf=None,*,columns=None,header=True,index=True,na_rep='NaN',formatters=None,float_format=None,sparsify=None,index_names=True,bold_rows=False,column_format=None,longtable=None,escape=None,encoding=None,decimal='.',multicolumn=None,multicolumn_format=None,multirow=None,caption=None,label=None,position=None)RenderobjecttoaLaTeXtabular,longtable,ornestedtable.Requires\usepackage{{booktabs}}.Theoutputcanbecopy/pastedintoamainLaTeXdocumentorreadfromanexternalfilewith\input{{table.tex}}.Changedinversion2.0.0:RefactoredtousetheStylerimplementationviajinja2templating.Parameters:bufstr,PathorStringIO-like,optional,defaultNoneBuffertowriteto.IfNone,theoutputisreturnedasastring.columnslistoflabel,optionalThesubsetofcolumnstowrite.Writesallcolumnsbydefault.headerboolorlistofstr,defaultTrueWriteoutthecolumnnames.Ifalistofstringsisgiven,itisassumedtobealiasesforthecolumnnames.indexbool,defaultTrueWriterownames(index).na_repstr,default‘NaN’Missingdatarepresentation.formatterslistoffunctionsordictof{{str:function}},optionalFormatterfunctionstoapplytocolumns’elementsbypositionorname.Theresultofeachfunctionmustbeaunicodestring.Listmustbeoflengthequaltothenumberofcolumns.float_formatone-parameterfunctionorstr,optional,defaultNoneFormatterforfloatingpointnumbers.Forexamplefloat_format="%.2f"andfloat_format="{{:0.2f}}".formatwillbothresultin0.1234beingformattedas0.12.sparsifybool,optionalSettoFalseforaDataFramewithahierarchicalindextoprinteverymultiindexkeyateachrow.Bydefault,thevaluewillbereadfromtheconfigmodule.index_namesbool,defaultTruePrintsthenamesoftheindexes.bold_rowsbool,defaultFalseMaketherowlabelsboldintheoutput.column_formatstr,optionalThecolumnsformatasspecifiedinLaTeXtableformate.g.‘rcl’for3columns.Bydefault,‘l’willbeusedforallcolumnsexceptcolumnsofnumbers,whichdefaultto‘r’.longtablebool,optionalUsealongtableenvironmentinsteadoftabular.Requiresaddingausepackage{{longtable}}toyourLaTeXpreamble.Bydefault,thevaluewillbereadfromthepandasconfigmodule,andsettoTrueiftheoptionstyler.latex.environmentis“longtable”.Changedinversion2.0.0:Thepandasoptionaffectingthisargumenthaschanged.escapebool,optionalBydefault,thevaluewillbereadfromthepandasconfigmoduleandsettoTrueiftheoptionstyler.format.escapeis“latex”.WhensettoFalsepreventsfromescapinglatexspecialcharactersincolumnnames.Changedinversion2.0.0:Thepandasoptionaffectingthisargumenthaschanged,ashasthedefaultvaluetoFalse.encodingstr,optionalAstringrepresentingtheencodingtouseintheoutputfile,defaultsto‘utf-8’.decimalstr,default‘.’Characterrecognizedasdecimalseparator,e.g.‘,’inEurope.multicolumnbool,defaultTrueUsemulticolumntoenhanceMultiIndexcolumns.Thedefaultwillbereadfromtheconfigmodule,andissetastheoptionstyler.sparse.columns.Changedinversion2.0.0:Thepandasoptionaffectingthisargumenthaschanged.multicolumn_formatstr,default‘r’Thealignmentformulticolumns,similartocolumn_formatThedefaultwillbereadfromtheconfigmodule,andissetastheoptionstyler.latex.multicol_align.Changedinversion2.0.0:Thepandasoptionaffectingthisargumenthaschanged,ashasthedefaultvalueto“r”.multirowbool,defaultTrueUsemultirowtoenhanceMultiIndexrows.Requiresaddingausepackage{{multirow}}toyourLaTeXpreamble.Willprintcenteredlabels(insteadoftop-aligned)acrossthecontainedrows,separatinggroupsviaclines.Thedefaultwillbereadfromthepandasconfigmodule,andissetastheoptionstyler.sparse.index.Changedinversion2.0.0:Thepandasoptionaffectingthisargumenthaschanged,ashasthedefaultvaluetoTrue.captionstrortuple,optionalTuple(full_caption,short_caption),whichresultsin\caption[short_caption]{{full_caption}};ifasinglestringispassed,noshortcaptionwillbeset.labelstr,optionalTheLaTeXlabeltobeplacedinside\label{{}}intheoutput.Thisisusedwith\ref{{}}inthemain.texfile.positionstr,optionalTheLaTeXpositionalargumentfortables,tobeplacedafter\begin{{}}intheoutput.Returns:strorNoneIfbufisNone,returnstheresultasastring.OtherwisereturnsNone.Seealsoio.formats.style.Styler.to_latexRenderaDataFrametoLaTeXwithconditionalformatting.DataFrame.to_stringRenderaDataFrametoaconsole-friendlytabularoutput.DataFrame.to_htmlRenderaDataFrameasanHTMLtable.NotesAsofv2.0.0thismethodhaschangedtousetheStylerimplementationaspartofStyler.to_latex()viajinja2templating.Thismeansthatjinja2isarequirement,andneedstobeinstalled,forthismethodtofunction.ItisadvisedthatusersswitchtousingStyler,sincethatimplementationismorefrequentlyupdatedandcontainsmuchmoreflexibilitywiththeoutput.403-2、参数403-2-1、buf(可选,默认值为None):字符串或None,输出的目标字符串缓冲区,如果为None,则返回LaTeX格式的字符串;如果提供了字符串,将写入该缓冲区。403-2-2、columns(可选,默认值为None):列表或None,要包含在输出中的列名,如果为None,则包含所有列,通常在Series中无需这个参数,因为Series只有一列。403-2-3、header(可选,默认值为True):布尔值,是否包含列头信息,对于Series,该参数通常无效,因为Series只有一列。403-2-4、index(可选,默认值为True):布尔值,是否在输出中包含行索引。403-2-5、na_rep(可选,默认值为'NaN'):字符串,用于表示缺失值的字符串。例如,可以设置为'-'。403-2-6、formatters(可选,默认值为None):字典或可回调对象,指定格式化函数的字典或一个适用于所有值的格式化函数。403-2-7、float_format(可选,默认值为None):可回调对象或None,处理浮点数格式的函数。403-2-8、sparsify(可选,默认值为None):布尔值,是否简化输出格式,省略多级索引中的重复条目。403-2-9、index_names(可选,默认值为True):布尔值,是否包含索引名称。403-2-10、bold_rows(可选,默认值为False):布尔值,是否将行索引以粗体显示。403-2-11、column_format(可选,默认值为None):字符串,指定列格式,可以用于定制表格布局。403-2-12、longtable(可选,默认值为None):布尔值,如果为True,则输出将使用longtable环境,适用于跨页表格。403-2-13、escape(可选,默认值为None):布尔值,是否转义LaTeX特殊字符。403-2-14、encoding(可选,默认值为None):字符串,字符串编码类型。403-2-15、decimal(可选,默认值为'.'):字符串,指定小数点符号,可以用于国际化需求。403-2-16、multicolumn(可选,默认值为None):整数或None,允许将多个列合并为一个列以描述更复杂的表格结构。403-2-17、multicolumn_format(可选,默认值为None):字符串或None,设置多列合并的格式。403-2-18、multirow(可选,默认值为None):整数或None,允许将若干行合并为一个单元格。403-2-19、caption(可选,默认值为None):字符串或None,在表格上方添加的。403-2-20、label(可选,默认值为None):字符串或None,用于cross-referencing的标签。403-2-21、position(可选,默认值为None):字符串或None,指定表格在LaTeX文档中的位置,例如'h','t','b'等。403-3、功能 将PandasSeries对象转换为易于在LaTeX文档中排版的表格格式,这使得用户可以轻松地在学术或技术出版物中插入数据,保持高质量的排版效果。403-4、返回值 如果buf为None,该方法返回一个包含LaTeX表格的字符串;如果buf提供了,则该方法将表格写入指定的缓冲区并返回None。403-5、说明 无403-6、用法403-6-1、数据准备无403-6-2、代码示例#403、pandas.Series.to_latex方法importpandasaspd#创建一个示例Seriesdata=pd.Series([1.23,4.56,None,7.89],index=['A','B','C','D'])#转换为LaTeX格式latex_string=data.to_latex(index=True,na_rep='缺失',caption='示例数据表')#输出LaTeX字符串print(latex_string)403-6-3、结果输出#403、pandas.Series.to_latex方法#\begin{table}#\caption{示例数据表}#\begin{tabular}{lr}#\toprule#&0\\#\midrule#A&1.230000\\#B&4.560000\\#C&缺失\\#D&7.890000\\#\bottomrule#\end{tabular}#\end{table}404、pandas.Series.to_markdown方法404-1、语法#404、pandas.Series.to_markdown方法pandas.Series.to_markdown(buf=None,mode='wt',index=True,storage_options=None,**kwargs)PrintSeriesinMarkdown-friendlyformat.Parameters:bufstr,PathorStringIO-like,optional,defaultNoneBuffertowriteto.IfNone,theoutputisreturnedasastring.modestr,optionalModeinwhichfileisopened,“wt”bydefault.indexbool,optional,defaultTrueAddindex(row)labels.storage_optionsdict,optionalExtraoptionsthatmakesenseforaparticularstorageconnection,e.g.host,port,username,password,etc.ForHTTP(S)URLsthekey-valuepairsareforwardedtourllib.request.Requestasheaderoptions.ForotherURLs(e.g.startingwith“s3://”,and“gcs://”)thekey-valuepairsareforwardedtofsspec.open.Pleaseseefsspecandurllibformoredetails,andformoreexamplesonstorageoptionsreferhere.**kwargsTheseparameterswillbepassedtotabulate.Returns:strSeriesinMarkdown-friendlyformat.NotesRequiresthetabulatepackage.404-2、参数404-2-1、buf(可选,默认值为None):字符串或None,输出的目标字符串缓冲区,若为None,则返回一个包含Markdown格式的字符串,如果提供了一个字符串,将写入该缓冲区。404-2-2、mode(可选,默认值为'wt'):字符串,打开文件的模式,常用的模式有'wt'(写入文本)等,该参数主要影响将输出写入文件的方式,对于直接返回字符串时不影响。404-2-3、index(可选,默认值为True):布尔值,是否在输出中包含行索引。404-2-4、storage_options(可选,默认值为None):字典或None,用于传递存储选项的字典,主要对读取和写入操作有影响。404-2-5、**kwargs(可选):其他关键字参数,可能包括格式化、排版等相关设置,具体取决于用户需要自定义的内容,比如精度、是否对齐等。404-3、功能 将PandasSeries对象转换为Markdown表格格式,该功能使得用户能够轻松地在支持Markdown语法的环境中,比如GitHub、JupyterNotebook等,展示数据,以保持良好的可读性和格式化效果。404-4、返回值 如果buf为None,该方法返回一个包含Markdown表格的字符串;如果提供了buf,则将Markdown表格写入指定的缓冲区,并返回None。404-5、说明 无404-6、用法404-6-1、数据准备无404-6-2、代码示例#404、pandas.Series.to_markdown方法importpandasaspds=pd.Series(["elk","pig","dog","quetzal"],name="animal")print(s.to_markdown())404-6-3、结果输出#404、pandas.Series.to_markdown方法#||animal|#|---:|:---------|#|0|elk|#|1|pig|#|2|dog|#|3|quetzal|405、pandas.DataFrame类405-1、语法#405、pandas.DataFrame类classpandas.DataFrame(data=None,index=None,columns=None,dtype=None,copy=None)Two-dimensional,size-mutable,potentiallyheterogeneoustabulardata.Datastructurealsocontainslabeledaxes(rowsandcolumns).Arithmeticoperationsalignonbothrowandcolumnlabels.Canbethoughtofasadict-likecontainerforSeriesobjects.Theprimarypandasdatastructure.Parameters:datandarray(structuredorhomogeneous),Iterable,dict,orDataFrameDictcancontainSeries,arrays,constants,dataclassorlist-likeobjects.Ifdataisadict,columnorderfollowsinsertion-order.IfadictcontainsSerieswhichhaveanindexdefined,itisalignedbyitsindex.ThisalignmentalsooccursifdataisaSeriesoraDataFrameitself.AlignmentisdoneonSeries/DataFrameinputs.Ifdataisalistofdicts,columnorderfollowsinsertion-order.indexIndexorarray-likeIndextouseforresultingframe.WilldefaulttoRangeIndexifnoindexinginformationpartofinputdataandnoindexprovided.columnsIndexorarray-likeColumnlabelstouseforresultingframewhendatadoesnothavethem,defaultingtoRangeIndex(0,1,2,…,n).Ifdatacontainscolumnlabels,willperformcolumnselectioninstead.dtypedtype,defaultNoneDatatypetoforce.Onlyasingledtypeisallowed.IfNone,infer.copyboolorNone,defaultNoneCopydatafrominputs.Fordictdata,thedefaultofNonebehaveslikecopy=True.ForDataFrameor2dndarrayinput,thedefaultofNonebehaveslikecopy=False.IfdataisadictcontainingoneormoreSeries(possiblyofdifferentdtypes),copy=Falsewillensurethattheseinputsarenotcopied.Changedinversion1.3.0.SeealsoDataFrame.from_recordsConstructorfromtuples,alsorecordarrays.DataFrame.from_dictFromdictsofSeries,arrays,ordicts.read_csvReadacomma-separatedvalues(csv)fileintoDataFrame.read_tableReadgeneraldelimitedfileintoDataFrame.read_clipboardReadtextfromclipboardintoDataFrame.NotesPleasereferencetheUserGuideformoreinformation.405-2、参数405-2-1、data(可选,默认值为None):表示初始数据,可以是多种设计的结构,包括:ndarray:由数组元素创建DataFrame。list:由列表元素创建DataFrame。dict:由字典元素创建DataFrame,字典的键可以是列名,对应的值是列数据。DataFrame:使用已有的DataFrame初始化。Series:使用Series初始化,Index将被共享。dictofSeries:一组Series对象。其他iterable:任何可迭代对象。405-2-2、index(可选,默认值为None):指定行索引标签,用于索引结果,若未提供,则默认从0到n-1作为索引。405-2-3、columns(可选,默认值为None):指定列索引标签,用于指定列名,若未提供,则默认从0到n-1作为列名(仅针对二维数组)。405-2-4、dtype(可选,默认值为None):指定DataFrame中数据的类型,若传入None,则数据类型由数据推断。405-2-5、copy(可选,默认值为None):布尔值,指定是否深拷贝数据,当为True时,即使传入的是DataFrame或其他Pandas数据结构,也进行数据的深拷贝。405-3、功能 用于表示二维、大小可变、具有潜在异构类型的表格数据。405-4、返回值 返回一个DataFrame对象,它是Pandas的核心数据结构,提供多种数据操作和分析工具。405-5、说明 无405-6、用法405-6-1、数据准备无405-6-2、代码示例#405、pandas.DataFrame类importpandasaspdimportnumpyasnp#使用ndarray创建DataFramearray_data=np.array([[1,2,3],[4,5,6]])df_from_array=pd.DataFrame(data=array_data,index=['row1','row2'],columns=['col1','col2','col3'])print("DataFramefromarray:\n",df_from_array)#使用dict创建DataFramedict_data={'col1':[1,2],'col2':[3,4],'col3':[5,6]}df_from_dict=pd.DataFrame(data=dict_data,index=['row1','row2'])print("DataFramefromdict:\n",df_from_dict)#使用DataFrame创建DataFramedf_copy=pd.DataFrame(data=df_from_dict,copy=True)print("CopiedDataFrame:\n",df_copy)405-6-3、结果输出#405、pandas.DataFrame类#DataFramefromarray:#col1col2col3#row1123#row2456#DataFramefromdict:#col1col2col3#row1135#row2246#CopiedDataFrame:#col1col2col3#row1135#row2246二、推荐阅读1、Python筑基之旅2、Python函数之旅3、Python算法之旅4、Python魔法之旅5、博客个人主页
|
|