python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > 获取DataFrame值的索引及其他

如何获取DataFrame值的索引以及其他

作者:S_o_l_o_n

这篇文章主要介绍了如何获取DataFrame值的索引以及其他问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

获取DataFrame值的索引及其他

1、可以用DataFrame的条件索引,即令df_sub=df[conditions],然后再获取df_sub的index属性即可

2、对于某一个列,可以先转化为list类型,然后利用list.index(values)方法获取索引,其中若有重复着,则返回第一个值对应的索引

3、list.count(value)可返回value在list中的个数

4、DataFrame.count()返回每行或每列的值的个数,除去空值(默认是行)

dataframe索引总结

dataframe通过索引获取数据的方式有[]、iloc、loc等几种方式

使用方法如下:

dates = pd.date_range("20130101", periods=6)
df3=pd.DataFrame(np.random.randn(6,4),index=dates,columns=list('ABCD'))
                   A         B         C         D
2013-01-01  0.469112 -0.282863 -1.509059 -1.135632
2013-01-02  1.212112 -0.173215  0.119209 -1.044236
2013-01-03 -0.861849 -2.104569 -0.494929  1.071804
2013-01-04  0.721555 -0.706771 -1.039575  0.271860
2013-01-05 -0.424972  0.567020  0.276232 -1.087401
2013-01-06 -0.673690  0.113648 -1.478427  0.524988

一、[]

df[]的参数只能传入一个维度,要么是行索引,要么是列索引,不能同时传入行索引和列索引。

(一)当查询某一列时,df[]传入一个columns值。

df3['A']
2013-01-01    0.531617
2013-01-02    0.246897
2013-01-03   -0.998825
2013-01-04    0.155664
2013-01-05   -1.624819
2013-01-06   -0.096553
Freq: D, Name: A, dtype: float64

(二)当查询多列时,df[]传入一个columns值的列表。

df3[['A','B']]
	            A	        B
2013-01-01	0.531617	-0.482471
2013-01-02	0.246897	3.693472
2013-01-03	-0.998825	0.155230
2013-01-04	0.155664	0.496338
2013-01-05	-1.624819	0.326698
2013-01-06	-0.096553	-0.250773

(三)当查询某一行或多行时,只能传入index值的切片。

df3[0:0]      #dataframe的第0行是指columns行。
    A    B    C    D
df3[0:3]
                A              B            C            D
2013-01-01    0.531617    -0.482471    0.185244    -0.236437
2013-01-02    0.246897    3.693472    0.091417    0.419647
2013-01-03    -0.998825    0.155230    0.942951    0.699358
df3[3:]
                A            B            C            D
2013-01-04    0.155664    0.496338    0.458513    0.315339
2013-01-05    -1.624819    0.326698    -2.198222    -0.544078
2013-01-06    -0.096553    -0.250773    0.491527    -1.857682

二、loc

.loc和.iloc的参数可以有值、列表、切片三种方式。传入值时,结果是series,传入列表和切片时,结果是dataframe。

.loc和.iloc的参数通过逗号分为两部分,前面是行索引或下标,后面是列索引或下标,列索引可以省略,但行索引不能省略。

最后

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文