求教pandas的dataframe索引值只有一行,用loc如何不返回series
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求教pandas的dataframe索引值只有一行,用loc如何不返回series相关的知识,希望对你有一定的参考价值。
首先是引入pandas和numpy,这是经常配合使用的两个包,pandas依赖于numpy,引入以后我们可以直接使用np/pd来表示这个两个模块先创建一个时间索引,所谓的索引(index)就是每一行数据的id,可以标识每一行的唯一值为了快速入门,我们看一下如何创建一个6X4的数据:randn函数用于创建随机数,参数表示行数和列数,dates是上一步创建的索引列我们还可以使用字典来创建数据框,例如创建一个列名为A的数据框,索引是自动创建的整数这又是一个字典创建DataFrame的例子假如字典内的数据长度不同,以最长的数据为准,比如B列有4行:可以使用dtypes来查看各行的数据格式接着看一下如何查看数据框中的数据,看一下所有的数据使用head查看前几行数据(默认是前5行),不过你可以指定前几行查看前三行数据使用tail查看后5行数据查看数据框的索引查看列名用columns查看数据值,用values查看描述性统计,用describe使用type看一下输出的描述性统计是什么样的数据类型——DataFrame数据使用T来转置数据,也就是行列转换对数据进行排序,用到了sort,参数可以指定根据哪一列数据进行排序。 参考技术A 比如,获取索引为【产品】的一行:data = df.loc[["产品"]] 返回的就是dataframe,而不是series了。
如果使用:data = df.loc["产品"] 返回的则是series 参考技术B 没办法,python返回值不固定,先判断返回值,再转换
if data is not None and data.__len__() > 0 and isinstance(data, pd.core.series.Series):
data = pd.DataFrame(data).T
以上是关于求教pandas的dataframe索引值只有一行,用loc如何不返回series的主要内容,如果未能解决你的问题,请参考以下文章
06 pandas DataFrame - 数据过滤、NaN处理、统计方法