精华内容
下载资源
问答
  • pd.dataframe
    千次阅读
    2021-01-12 09:20:27

    DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表。==

    简介

    DataFrame的单元格可以存放数值、字符串等,这和excel表很像,同时DataFrame可以设置列名columns与行名index。

    1、创建DataFrame

    1.1函数创建

    pandas常与numpy库一起使用,所以通常会一起引用

    importpandas as pdimportnumpy as np

    df1= pd.DataFrame(np.random.randn(3, 3), index=list('abc'), columns=list('ABC'))print(df1)#A B C#a -0.612978 0.237191 0.312969#b -1.281485 1.135944 0.162456#c 2.232905 0.200209 0.028671

    其中第一个参数是存放在DataFrame里的数据,第二个参数index就是之前说的行名,第三个参数columns是之前说的列名。

    其中后两个参数可以使用list输入,但是注意,这个list的长度要和DataFrame的大小匹配,不然会报错

    df2 = pd.DataFrame(np.random.randn(3, 3), index=list('abcd'), columns=list('ABCD'))#ValueError: Shape of passed values is (3, 3), indices imply (4, 4)

    当然,这两个参数是可选的,你可以选择不设置,而且这两个list是可以一样的。

    df3 

    更多相关内容
  • kaggle入门之pd.DataFrame

    千次阅读 2021-01-14 16:55:12
    看各种kaggle的代码时,发现pd.DataFrame是常用的数据结构,要想快速浏览、熟练修改各种kaggle代码,首先入门的应该是pd.DataFrame这个结构,下面记录pd.DataFrame常用的几种函数。 1、创建DataFrame import pandas ...

    看各种kaggle的代码时,发现pd.DataFrame是常用的数据结构,要想快速浏览、熟练修改各种kaggle代码,首先入门的应该是pd.DataFrame这个结构,下面记录pd.DataFrame常用的几种函数。

    1、创建DataFrame

    import pandas as pd 
    import numpy as np
    
    #数据,行名,列名
    df1 = pd.DataFrame(np.random.randn(3, 3), index=list('abc'), columns=list('ABC'))
    
    #也可以用字典创建
    dic1 = {
        'name': ['张三', '李四', '王二', '小七'],
        'age': [37, 70, 35, 10],
        'gender': ['男', '男', '男', '女']
        }
    df = pd.DataFrame(dic1)
    
    #输出结果
      name  age gender
    0   张三   371   李四   702   王二   353   小七   10

    2、DataFrame属性

    2.1、查看属性

    import pandas as pd
    print(df.dtypes)
    
    #输出结果:
    name      object
    age        int64
    gender    object
    dtype: object
    

    2.2、查看DataFrame头和尾,默认是5行

    print(df.head(2))
    print(df.tail(2))
    
    #输出结果:
      name  age gender
    0   张三   371   李四   70      男
      name  age gender
    2   王二   353   小七   10

    2.3 查看行名与列名

    print(df.index)
    print(df.columns)
    
    #输出结果:
    RangeIndex(start=0, stop=4, step=1)
    Index(['name', 'age', 'gender'], dtype='object')
    

    2.4 df.values 查看数据值,返回ndarray类型的对象

    print(df.values)
    print (type(df.values))
    <class 'numpy.ndarray'>
    [['张三' 37 '男']
     ['李四' 70 '男']
     ['王二' 35 '男']
     ['小七' 10 '女']]
    

    2.5 df.empty判断DataFrame是否为空

    df_empty = pd.DataFrame({'A' : []})
    print(df_empty)
    
    #输出结果:
    Empty DataFrame
    Columns: [A]
    Index: []
    
    print(df_empty.empty)
    #输出结果:
    True
    

    3、DataFrame 下标、索引

    3.1 df.at

    访问行/列标签对的单个值,如果label不存在,返回错误

    dic1 = {
        'name': ['张三', '李四', '王二', '小七'],
        'age': [37, 70, 35, 10],
        'gender': ['男', '男', '男', '女']
        }
    
    df = pd.DataFrame(dic1)
    print(df)
    print(df.at[2, 'gender'])
    
    #输出结果:
      name  age gender
    0   张三   371   李四   702   王二   353   小七   10      女
    男
    

    3.2 df.loc  行操作

    将上面的DataFrame的倒置一下,下面将列索引换成[4,5,6,7]是为了说明,loc中的值都是索引’label’值。

    dic1 = {
        'name': ['张三', '李四', '王二', '小七'],
        'age': [37, 70, 35, 10],
        'gender': ['男', '男', '男', '女']
        }
    
    df = pd.DataFrame(dic1)
    
    df2 = pd.DataFrame(df.values.T, index=df.columns, columns=[4, 5, 6, 7])
    print(df2)
    

    3.2.1 单个 label,返回行内容

    print(df2.loc['age'])
    #结果:
    4    37
    5    70
    6    35
    7    10
    Name: age, dtype: object
    

    3.2.2 多个labels, 使用[[]], 返回 a DataFrame

    print(df2.loc[['age', 'gender']])
    
             4   5   6   7
    age     37  70  35  10
    gender   男   男   男   女
    

    3.2.3 行和列各一个label

    print(df2.loc['age', 7])
    10
    

    3.2.4 行进行切片,列使用单一label

    print(df2.loc['name':'gender', 7])
    
    name      小七
    age       10
    gender     女
    Name: 7, dtype: object
    

    3.2.5 和行的长度一样的布尔行列表

    print(df2.loc[[True, False, True]])
    
             4   5   6   7
    name    张三  李四  王二  小七
    gender   男   男   男   女
    

    3.2.6  整行重新设值

    df2.loc['age'] = 100
    print (df2)
    
              4    5    6    7
    name     张三   李四   王二   小七
    age     100  100  100  100
    gender    男    男    男    女
    

    3.3 df[] 列操作

    print (df2[7])
    
    name      小七
    age       10
    gender     女
    Name: 7, dtype: object
    

    4、DataFrame map,apply操作

    把gender列中的男换成0, 女换成1

    df["gender"] = df["gender"].map({"男":0, "女":1})
    

    apply 方法的作用原理和map方法的类似,区别在于apply能够传入功能更为复杂的函数。

    def apply_age(x, bias):
        return x+bias
    df["age"] = df["age"].apply(apply_age, args=(3,))
    

    apply 可以接收各种各样的函数(python内置的或者自定义的)

    # 沿着0轴求和
    data[["height","weight","age"]].apply(np.sum, axis=0)# 沿着0轴取对数
    data[["height","weight","age"]].apply(np.log, axis=0)
    
    
    def BMI(series):
        weight = series["weight"]
        height = series["height"]/100
        BMI = weight/height**2
        return BMI
    ​
    data["BMI"] = data.apply(BMI,axis=1)
    

    5、DataFrame.isna 缺失值判断

    df = pd.DataFrame({'age': [5, 6, np.NaN],
                       'born': [pd.NaT, pd.Timestamp('1939-05-27'),
                                pd.Timestamp('1940-04-25')],
                       'name': ['Alfred', 'Batman', ''],
                       'toy': [None, 'Batmobile', 'Joker']})
    
    df.isna()
    
       age       born    name        toy
    0  5.0        NaT  Alfred       None
    1  6.0 1939-05-27  Batman  Batmobile
    2  NaN 1940-04-25              Joker
    
     	age 	born 	name 	toy
    0 	False 	True 	False 	True
    1 	False 	False 	False 	False
    2 	True 	False 	False 	False
    
    

    6、DataFrame 两列生成字典

    import pandas as pd
    df =pd.DataFrame({'col_1':[1,2],'col_2':[0.5,0.75]})
    print (df)
       col_1  col_2
    0      1   0.50
    1      2   0.75
    
    a = df.set_index(['col_1'])["col_2"].to_dict()
    print (a)
    {1: 0.5, 2: 0.75}
    
    展开全文
  • pd.DataFrame系列

    千次阅读 2020-05-15 17:02:48
    pd.DataFrame初始化以及set_index import pandas as pd df = pd.DataFrame([['a1', 1], ['a2', 4]], columns=['uid', 'score']) print(df) df.set_index('uid',inplace=True); print (df)

    如何让dataframe优雅的增加一列?

    • 假设索引最大到287
    • 那我怎么加一行呢?

    data.loc[288] = data.loc[287]

    获取一个dataframe的后三列,0行到100行

    • 注意啊,索引是100的那个不包含哈!
    a=grade[[grade.columns[-3],grade.columns[-2],grade.columns[-1]]][0:100]
    

    a=grade[grade.columns][0:100]
    

    读取excel,将结果写入到一个excel的多个sheet

    项目.xlsx是输入,俺老子要把这个按照visibility分成公开的还是私有的,然后塞到项目-公私分开.xlsx中作为两个sheet

    #encoding: utf-8
    import pandas as pd
    input = "项目.xlsx"
    output = '项目-公私分开.xlsx'
    
    data = pd.read_excel(input)
    data['visibility']=data['visibility'].astype('category');
    data['Paths']=data['Paths'].astype('str');
    writer = pd.ExcelWriter(output)
    
    
    condition= (data['visibility']== 'private')
    data[condition].to_excel(writer, index = False,sheet_name= '私-底')
    
    condition= (data['visibility']== 'public')
    data[condition].to_excel(writer, index = False,sheet_name= '公-底')
    
    writer.save()
    writer.close()
    
    

    • 请问index=False是啥意思呢,意思就是别把索引写到第一列啊!

    筛选数据啦

    data[data['id']==424365]
    

    DataFrame.groupby()

    • groupby使你能以一种自然的方式对数据集进行切片、切块、摘要

    等操作。

    • 根据一个或多个键(可以是函数、数组或DataFrame列名)拆分pandas对象。
    • 计算分组摘要统计,如计数、平均值、标准差,或用户自定义函数。
    • 对DataFrame的列应用各种各样的函数。
    • 应用组内转换或其他运算,如规格化、线性回归、排名或选取子集等。计算透视表或交叉表。执行分位数分析以及其他分组分析。

    • groupby分组函数:
    • 返回值:返回重构格式的DataFrame,groupby里面的字段内的数据重构后都会变成索引
    • groupby(),一般和sum()、mean()一起使用
    
    import pandas as pd
    df = pd.DataFrame({'key1':list('ababa'),
                      'key2': ['one','two','one','two','one'],
                      'data1': np.random.randn(5),
                      'data2': np.random.randn(5)})
    print(df)
    
          data1     data2 key1 key2
    0 -1.313101 -0.453361    a  one
    1  0.791463  1.096693    b  two
    2  0.462611  1.150597    a  one
    3 -0.216121  1.381333    b  two
    4  0.077367 -0.282876    a  one
    
    
    • 用groupby,分组键均为Series(譬如df[‘xx’]),
    • 实际上分组键可以是任何长度适当的数组
    #将df['data1']按照分组键为df['key1']进行分组
    grouped=df['data1'].groupby(df['key1'])
    print(grouped.mean())
    
    key1
    a   -0.257707
    b    0.287671
    Name: data1, dtype: float64
    
    states=np.array(['Ohio','California','California','Ohio','Ohio'])
    years=np.array([2005,2005,2006,2005,2006])
    #states第一层索引,years第二层分层索引
    print(df['data1'].groupby([states,years]).mean())
    California  2005    0.791463
                2006    0.462611
    Ohio        2005   -0.764611
                2006    0.077367
    Name: data1, dtype: float64
    
    
    #df根据‘key1’分组,然后对df剩余数值型的数据运算
    df.groupby('key1').mean()
             data1     data2
    key1                    
    a    -0.257707  0.138120
    b     0.287671  1.239013
    #可以看出没有key2列,因为df[‘key2’]不是数值数据,所以被从结果中移除。默认情况下,所有数值列都会被聚合,虽然有时可能被过滤为一个子集。
    

    • 对分组进行迭代
    #name就是groupby中的key1的值,group就是要输出的内容
    for name, group in df.groupby('key1'):
            print (name,group)
    
    a       data1     data2 key1 key2
    0 -1.313101 -0.453361    a  one
    2  0.462611  1.150597    a  one
    4  0.077367 -0.282876    a  one
    b       data1     data2 key1 key2
    1  0.791463  1.096693    b  two
    3 -0.216121  1.381333    b  two
    

    canci

    .sort_index()和.sort_values()

    1. df. sort_values()
    • 既可根据列数据,也可根据行数据排序。
    • 必须指定by参数,即必须指定哪几行或哪几列;
    • 无法根据index名和columns名排序(由.sort_index()执行)

    • sort_values(by, axis=0, ascending=True, inplace=False, kind=‘quicksort’, na_position=‘last’)

    • axis:{0 or ‘index’, 1 or ‘columns’}, default 0,默认按照列排序,为1,则是横向排序。

    • by:str or list of str;如果axis=0,那么by=“列名”;如果axis=1,那么by=“行名”。

    • ascending:True则升,如果by=[‘列名1’,‘列名2’],则该参数可以是[True, False],即第一字段升序,第二个降序。

    • inplace:布尔型,是否用排序后的数据框替换现有的数据框。

    • kind:排序方法,{‘quicksort’, ‘mergesort’, ‘heapsort’}, default ‘quicksort’。似乎不用太关心。

    • na_position:{‘first’, ‘last’}, default ‘last’,默认缺失值排在最后面。

    df = pd.DataFrame({'b':[1,2,3,2],'a':[4,3,2,1],'c':[1,3,8,2]},index=[2,0,1,3]) 
        b   a   c
    2   1   4   1
    0   2   3   3
    1   3   2   8
    3   2   1   2
    

    • 按b升序
    df.sort_values(by='b') #等同于df.sort_values(by='b',axis=0)
        b   a   c
    2   1   4   1
    0   2   3   3
    3   2   1   2
    1   3   2   8
    

    • 按b列降,再按a升
    df.sort_values(by=['b','a'],axis=0,ascending=[False,True]) #等同于df.sort_values(by=['b','a'],axis=0,ascending=[False,True]) 
        b   a   c
    1   3   2   8
    3   2   1   2
    0   2   3   3
    2   1   4   1
    

    df.sort_values(by=3,axis=1) #必须指定axis=1
        a   b   c
    2   4   1   1
    0   3   2   3
    1   2   3   8
    3   1   2   2
    

    canci

    DataFrame的values

    import pandas as pd
    
    data = pd.DataFrame(columns=['a','b'], data=[[1,2],[3,4]])
    
    print (data.values)
    print (type(data.values))
    
    [[1 2]
     [3 4]]
    <class 'numpy.ndarray'>
    

    这个好啊,有多少个记录就有多少行,每列就是属性,成了数组了!每列没有列名喽

    print(data.shape)

    • 你可以机灵的看看这个data的shape

    DataFrame用drop_duplicates()去重

    • 经常需对DataFrame去重,但有时也会需要只保留重复值。

    • 先创建一个包含一行重复值的DataFrame。

    在这里插入图片描述

    • 可以选择是否保留重复值,默认保留重复值,
    • 不保留重复值的话直接设置参数keep为False

    在这里插入图片描述

    • 有时候要取重复数据,
    • 就可根据刚刚上面我们得到的两个DataFrame
    • 来concat到一起之后去重不保留重复值就可以。
    • 这样就把重复值取出来了。

    在这里插入图片描述

    • 根据某列去重

    在这里插入图片描述

    在这里插入图片描述

    read_csv和to_csv参数解释

    在Dataframe中新添一列

    • 直接指明列名,然后赋值就可
    
    
    import pandas as pd
    
    data = pd.DataFrame(columns=['a','b'], data=[[1,2],[3,4]])
    
    data
    
    
    >>> data
    
       a  b
    
    0  1  2
    
    1  3  4
    
    • 添加一列’c‘,赋为空白值。
    
    data['c'] = ''
    
    >>> data
    
       a  b c
    
    0  1  2
    
    1  3  4
    
    

    
    
    data['d'] = [5,6]
    
    data
    
    >>> data
    
       a  b c  d
    
    0  1  2    5
    
    1  3  4    6
    
    
    

    pd.DataFrame初始化以及set_index

    
    import pandas as pd
    
    
    df = pd.DataFrame([['a1', 1], ['a2', 4]], columns=['uid', 'score'])
    
    print(df)
    
    df.set_index('uid',inplace=True);
    
    print (df)
    
    
    

    在这里插入图片描述

    set_index

    set_index():

    • DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)

    • keys:列标签或列标签/数组列表,需要设置为索引的列

    • drop:删除用作新索引的列

    • append:是否将列附加到现有索引

    • inplace:默认False,适当修改DataFrame(不要创建新对象)

    • verify_integrity:默认false,检查新索引的副本。否则,请将检查推迟到必要时进行。将其设置为false将提高该方法的性能。

    print (df[‘uid’])

    
    import pandas as pd
    
    
    df = pd.DataFrame([['a1', 1], ['a2', 4]], columns=['uid', 'score'])
    
    print(df)
    
    print (df['uid'])
    print ("sdfdsfdfgddddddddddddddddddddddddddddddddddddd")
    print (df['score'])
    
    

    在这里插入图片描述

    df[‘score’]=df[‘score’].astype(‘str’);

    
    
    import pandas as pd
    
    
    df = pd.DataFrame([['a1', 1], ['a2', 4]], columns=['uid', 'score'])
    
    print(df)
    
    
    print (df['score'])
    
    df['score']=df['score'].astype('str')
    
    print (df['score'])
    
    

    在这里插入图片描述

    import pandas as pd
    
    
    df = pd.DataFrame([['a1', 1], ['a2', 4]], columns=['uid', 'score'])
    
    
    
    df['score']=df['uid'].astype('category');
    
    print (df['score'])
    
    

    在这里插入图片描述

    drop方法

    • drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors=‘raise’)

    • labels是指要删除的标签,一个或者是列表形式的多个,

    • axis指处哪一个轴

    • columns是指某一列或者多列,

    • level是指等级,针对多重索引

    • inplaces是否替换原来的dataframe

    
    import pandas as pd
    import numpy as np
    
    
    df = pd.DataFrame(np.random.randn(5,3),index = list('abcde'),columns = ['one','two','three'])
    
    print (df)
    
    
    
    df.drop(['one'],axis=1,inplace=True)
    print (df)
    
    

    在这里插入图片描述

    
    import pandas as pd
    import numpy as np
    
    
    df = pd.DataFrame(np.random.randn(5,3),index = list('abcde'),columns = ['one','two','three'])
    
    print (df)
    
    
    
    df.drop(['a','b'],inplace=True)
    print (df)
    
    

    在这里插入图片描述

    
    >>> df = pd.DataFrame(np.arange(12).reshape(3,4),
    
    ...                   columns=['A', 'B', 'C', 'D'])
    
    >>> df
    
       A  B   C   D
    
    0  0  1   2   3
    
    1  4  5   6   7
    
    2  8  9  10  11
    
    #指定删除相关的列,没有带columns,所以要指出是哪个轴上的
    
    >>> df.drop(['B', 'C'], axis=1)
    
       A   D
    
    0  0   3
    
    1  4   7
    
    2  8  11
    
    #这里带有columns,所以不用加上axis参数
    
    >>> df.drop(columns=['B', 'C'])
    
       A   D
    
    0  0   3
    
    1  4   7
    
    2  8  11
    
     
    
    #删除指定索引的行,这里没有axis参数,就是默认axis=0,也就是删除行
    
    >>> df.drop([0, 1])
    
       A  B   C   D
    
    2  8  9  10  11
    
    

    求dataframe的列信息

    print (ad.columns)
    Index(['Unnamed: 0', 'creative_id', 'ad_id', 'product_id', 'product_category',
           'advertiser_id', 'industry'],
          dtype='object')
    
    print (type(ad.columns))
    <class 'pandas.core.indexes.base.Index'>
    

    isnull函数

    • 列级别的判断,只要该列有为空或者NA的元素,就为True,否则False
    
    ad.isnull().any()
    

    在这里插入图片描述

    • 元素级别的判断,把对应的所有元素的位置都列出来,
    • 元素为空或者NA就显示True,否则False
    ad.isnull()
    
    

    在这里插入图片描述

    在这里插入图片描述

    pandas替换-3和3

    
    
    
    import pandas as pd
    import numpy as np
    
    data=pd.DataFrame(np.random.randn(10000,4))
    print (data.head())
    
    print (data.describe())
    
    
    print (".....................................\n")
    print (data[(np.abs(data)>3).any(1)])
    
    print (".....................................\n")
    print (np.sign(data)*3)
    
    
    print (".....................................\n")
    data[(np.abs(data)>3)]=np.sign(data)*3
    
    print (data[(np.abs(data)>3).any(1)])
    
    
    
    
    • any(1)
    • 1代表1轴也就是行
    • any的意思是每一行中只要有一个值满足条件就不排除

    • 将异常值找出来, data[np.abs(data) > 3]
    • 替换找到的异常值. data[np.abs(data) > 3] = np.sign(data)*3

    data1=data,data1仍然左右data!

    
    import pandas as pd
    import numpy as np
    
    data=pd.DataFrame(np.random.randn(10000,4))
    print (data[0][0])
    
    data1=data
    
    data1[0][0]=12
    
    print (data[0][0])
    
    
    -0.2163364765902928
    12.0
    

    
    import pandas as pd
    import numpy as np
    
    data=pd.DataFrame(np.random.randn(10000,4))
    print (data[0][0])
    
    data1=data.copy()
    
    data1[0][0]=12
    
    print (data[0][0])
    
    
    -1.323364816178571
    -1.323364816178571
    

    pndas删除某一行和某些行

    import pandas as pd
    import numpy as np
    
    data=pd.DataFrame(np.random.randn(8,4))
    
    
    print (data)
    
    data.drop([0,1,2], axis=0, inplace=True)
    
    print (data)
    
              0         1         2         3
    0 -1.356098 -2.757676  1.298255  0.680684
    1 -0.850784 -0.499739  0.735980 -1.367757
    2 -0.136712 -1.517955  1.732635 -0.616452
    3 -0.333158  0.247137 -0.778323 -0.619491
    4  0.447829  0.319978  1.584691 -0.327392
    5  0.842971  1.618222 -0.309938 -1.128479
    6  1.317082 -1.590495  0.968119  0.699859
    7 -0.815379 -0.034858 -2.285859 -1.610159
              0         1         2         3
    3 -0.333158  0.247137 -0.778323 -0.619491
    4  0.447829  0.319978  1.584691 -0.327392
    5  0.842971  1.618222 -0.309938 -1.128479
    6  1.317082 -1.590495  0.968119  0.699859
    7 -0.815379 -0.034858 -2.285859 -1.610159
    
    
    
    • 牛逼的是我们的索引啊!!
    展开全文
  • Python3 pd.dataframe写入csv和xlsx

    千次阅读 2022-01-18 17:29:59
    Python3 pd.dataframe写入csv和xlsx。代码如下: df = pd.DataFrame( columns={'dist','distance','409','425', '442', '458', '474', '491', '507', '523', '540', '556','572', '589', '605', '621', '637', '...

    Python3 pd.dataframe写入csv和xlsx。代码如下:

    
    df = pd.DataFrame(
        columns={'dist','distance','409','425', '442', '458', '474', '491', '507', '523', '540', '556','572', '589', '605', '621', '637', '653', '670', '686', '703', '719', '735', '751', '768', '784','800', '816', '833', '840', '865', '882', '898', '914'})
    for ...
    
        df.loc[count] = {'dist':j , 'distance': dist, '409': array32[0], '425': array32[1], '442': array32[2],\
                         '458': array32[3],'474': array32[4], '491': array32[5], '507': array32[6], '523': array32[7],\
                             '540': array32[8],'556': array32[9],'572': array32[10], '589': array32[11], '605': array32[12],\
                                 '621': array32[13],'637': array32[14],'653': array32[15],'670': array32[16], '686': array32[17],\
                                     '703': array32[18], '719': array32[19],'735': array32[20],'751': array32[21],'768': array32[22],\
                                         '784': array32[23], '800': array32[24],'816': array32[25],'833': array32[26],'840': array32[27],\
                                             '865': array32[28], '882': array32[29],'898': array32[30], '914': array32[31]}
    
    
    #写入csv
    df.to_csv(output_dir + '\\' +specie_name+str(i+1)+'_merged.csv',index=False)
    #写入xlsx
    df.to_excel(output_dir + '\\' +specie_name+str(i+1)+'_merged.xlsx',index=False)
    

    如报错:No module named ‘openpyxl’
    则pip install openpyxl安装一下此包。

    展开全文
  • pd.DataFrame()

    千次阅读 2022-01-24 14:20:14
    b = pd.DataFrame([7,6],columns=['a']) c = pd.DataFrame([[7],[6]],columns=['a']) # d = pd.DataFrame([7,6],columns=['a','b']) #ValueError: Shape of passed values is (2, 1), indices imply (2, 2) e = pd....
  • pd.DataFrame()函数解析(最清晰的解释)

    万次阅读 多人点赞 2019-06-26 10:57:00
    DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表。 文章目录==DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表。==0 简介1 创建DataFrame1.1 使用numpy函数创建...
  • pd.DataFrame()函数

    千次阅读 2020-04-21 18:06:24
    pd.DataFrame()函数 import pandas as pd import numpy as np data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada'], 'year': [2000, 2001, 2002, 2001, np.nan], # np.nan表示NA 'pop': ...
  • 【小白从小学Python、C、...pd.DataFrame() 选择题 关于以下代码说法错误的是? import pandas as pd list1 = [[1,2],[3,4]] df1 = pd.DataFrame(list1) print((df1)) print("=============") df2 = pd.DataFrame({'A':
  • DataFrame数据的保存和读取 df.to_csv写入到csv文件 pd.read_csv读取csv文件 df.to_json写入到json文件 pd.read_json读取json文件 ... pd.read_html读取 html文件 ...pandas.DataFrame.to_csv 将 DataFrame写入到 ...
  • pd.DataFrame()快速筛选数据

    千次阅读 2021-12-30 11:18:09
    这里写自定义目录标题问题场景实现方法 问题场景 当需要对excel数据根据不同的条件进行筛选,可以利用pandas快速实现。例如筛选出一张表格里来自不同网站的... selected_df = pd.DataFrame(columns=raw_df.columns.va
  • python-pd.DataFrame 总结备忘

    千次阅读 2020-11-27 20:09:22
    创建一个空的DataFrame import pandas as pd df_keyword = pd.DataFrame([], columns=['关键词', '推荐理由', '月均搜索量', '竞争程度', '建议出价']) 此时 df_keyword 即为一个空的df,列字段包括 ['关键词', '...
  • 把常量 转化 pd.DataFrame 时报错

    千次阅读 2022-03-25 16:24:46
    【注】1、在把抓取的数据通过 pandas 导入excel 之中,发现在转成pd.DataFrame 时候会报错,那是因为之前导入的 是列表 列表,而这次导入的是常量值,所以会报错: ValueError: If using all scalar values, you ...
  • pd.DataFrame()用法简单记录

    万次阅读 2021-04-19 14:29:46
    pd.DataFrame() 先来看看它的定义: class DataFrame( data=None, index: Optional[Axes]=None, # 行标 columns: Optional[Axes]=None, # 列标 dtype: Optional[Dtype]=None, # 存储的数据类型 copy: ...
  • 说说 pd.DataFrame.from_dict这个函数

    千次阅读 2021-02-19 11:39:48
    Signature: pd.DataFrame.from_dict(data, orient='columns', dtype=None, columns=None) -> 'DataFrame' Docstring: Construct DataFrame from dict of array-like or dicts. Creates DataFrame object from ...
  • pandas——pd.DataFrame.iloc()

    千次阅读 2021-01-11 10:32:42
    pandas.DataFrame.iloc() 纯基于位置的整数索引 输入格式: 一个整数列表或数组,如[4,3,0]。 一个带有int类型的slice对象,例如1:7。 一个布尔值数组。 一个具有一个参数的可调用函数,返回索引 案例 mydict = [{...
  • 详解pd.DataFrame中的几种索引变换

    千次阅读 2020-11-07 03:02:11
    详解pd.DataFrame中的几种索引变换 导读:pandas中最常用的数据结构是DataFrame,而DataFrame相较于嵌套list或者二维numpy数组更好用的原因之一在于其提供了行索引和列名。本文主要介绍行索引的几种变换方式,...
  • type_series=pd.Series(data=[8944510,559132,291657,199147], index=['pv','cart','fav','buy']) """ pv 8944510 cart 559132 fav 291657 buy 199147 Name: type, dtype: int64 """ Pandas库里面DataFrame的介绍 ...
  • pd.DataFrame()函数是什么

    千次阅读 2021-03-04 00:00:54
    DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表.
  • pd.Series序列和pd.DataFrame的用法

    千次阅读 2019-04-06 00:16:19
    pd.Series用法 A. 首先需要载入pandas 和numpy如下: import pandas as pd import numpy as np B. 接着定义一个pd.Series序列并输出: s1 = pd.Series((1,2,3,4,5)) print(s1) 输出如下: 0 1 1 2 2 3 3...
  • 我运行pd.DataFrame.to_excel,结果每个选项都报错,但是库都打足了。 # 1.文件读取 # 1.1 读取Excel文件 import pandas as pd data = pd.read_excel('data.xlsx') # data为DataFrame结构,这里设置是相对路径,也...
  • pd.DataFrame.sort_values

    千次阅读 2020-04-06 15:34:55
    pd.DataFrame.sort_values()
  • pandas pd.DataFrame 中文显示乱码

    千次阅读 2020-09-04 17:05:07
    from pylab import mpl # mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['font.sans-serif'] = ['Microsoft YaHei'] # 指定默认字体:解决plot不能显示中文问题 mpl.rcParams['axes.unicode_minus'] =...
  • 函数pandas.DataFrame.drop_duplicates(subset=None, keep='first', inplace=False, ignore_index= False)主要用来去除重复项,返回DataFrame类型的数据。 有几个参数要注意一下 subset:默认为None 去除重复项时要...
  • pd.DataFrame的sort_values方法排序问题

    千次阅读 2020-02-16 20:15:38
    在进行LDA主题分析时,希望对生成主题下的词语按主题号为主序,按词语强度为辅序进行排序,数据是以... dfTopic=pd.DataFrame(tt_list,columns=['Topic','keywords','Freq']) dfTopic.sort_values(by=['To...
  • pd.DataFrame的几种构造方式

    万次阅读 2019-09-08 16:48:22
    1.data为字典 1.1.字典结构1 字典中结构为: {列名1:[行数据列表1] ,列名2:[行数据列表2] ...df1= pd.DataFrame({'source':['andriod','windows','iphone','linux','360浏览器'] ,'cou...
  • pd.DataFrame(dtype= float)知道这些还不够

    万次阅读 2019-04-01 17:20:32
    pandas.DataFrame 官方文档 class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False) 参数 意义 数据结构 data 需要被转换的数据 ndarray (structured or homogeneous), ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 161,219
精华内容 64,487
关键字:

pd.dataframe

友情链接: 1.rar