美文网首页
pandas笔记

pandas笔记

作者: Lucky_Gao | 来源:发表于2019-04-21 00:28 被阅读0次

数据创建

1.列表形式创建

默认行模式进行创建:

a = ['c','d']
b = ['2','3']
c= []
c.append(a)
c.append(b)
d = pd.DataFrame(c,columns = ['a','b'])
print(d)
##默认行模式
Out[1]: 
   a  b
0  c  d
1  2  3

如果要转换为列模式,需要进行如下处理:

h = d.T
h = h.rename(columns = {0:'a',1:'b'})    
print(h)
Out[59]: 
   a  b
a  d  2
b  b  3

生成测试样例数据:

l = []
for i in range(1,10):
c = []
for j in range(1,10):
    print(str(i)+','+str(j))
    d = str(i)+','+str(j)
    c.append(d)
l.append(c)
df = pd.DataFrame(l,columns = [chr(i) for i in range(97,106)])
#注:python是以0为索引的开始。
#############out#####################
print(df)
     a    b    c    d    e    f    g    h    i
0  1,1  1,2  1,3  1,4  1,5  1,6  1,7  1,8  1,9
1  2,1  2,2  2,3  2,4  2,5  2,6  2,7  2,8  2,9
2  3,1  3,2  3,3  3,4  3,5  3,6  3,7  3,8  3,9
3  4,1  4,2  4,3  4,4  4,5  4,6  4,7  4,8  4,9
4  5,1  5,2  5,3  5,4  5,5  5,6  5,7  5,8  5,9
5  6,1  6,2  6,3  6,4  6,5  6,6  6,7  6,8  6,9
6  7,1  7,2  7,3  7,4  7,5  7,6  7,7  7,8  7,9
7  8,1  8,2  8,3  8,4  8,5  8,6  8,7  8,8  8,9
8  9,1  9,2  9,3  9,4  9,5  9,6  9,7  9,8  9,9
print(l)
   [['1,1', '1,2', '1,3', '1,4', '1,5', '1,6', '1,7', '1,8', '1,9'],
     ['2,1', '2,2', '2,3', '2,4', '2,5', '2,6', '2,7', '2,8', '2,9'],
     ['3,1', '3,2', '3,3', '3,4', '3,5', '3,6', '3,7', '3,8', '3,9'],
     ['4,1', '4,2', '4,3', '4,4', '4,5', '4,6', '4,7', '4,8', '4,9'],
     ['5,1', '5,2', '5,3', '5,4', '5,5', '5,6', '5,7', '5,8', '5,9'],
     ['6,1', '6,2', '6,3', '6,4', '6,5', '6,6', '6,7', '6,8', '6,9'],
     ['7,1', '7,2', '7,3', '7,4', '7,5', '7,6', '7,7', '7,8', '7,9'],
     ['8,1', '8,2', '8,3', '8,4', '8,5', '8,6', '8,7', '8,8', '8,9'],
     ['9,1', '9,2', '9,3', '9,4', '9,5', '9,6', '9,7', '9,8', '9,9']]

2. 字典形式创建

aa = pd.DataFrame({'a':[1,2],'b':[2,3]})
    Out[72]: 
     a  b
  0  1  2
  1  2  3

3. 创建空的DataFrame

   df = pd.DataFrame(index = [i for i in range(3)],columns=df.columns)
  • 增加行

     df = pd.concat([df,df2],ignore_index = True,axis = 0)
      # axis = 0,按行连接
      # axis = 1,按列连接
      # ignore_index,重排索引
    
  • 转换数据类型

    # 1.创建 DataFrame 时指定类型
      df= pd.DataFrame(data=np.arange(100).reshape((10,10)), dtype=np.int8) 
    # 2. 对于 series,可以使用to_numeric 转换为数值。默认情况下,它不能处理字母型的字符串'pandas'
      pd.to_numeric(pd.Series(['1', '2', '4.7', 'pandas', '10']))
    ##可以将无效值强制转换为NaN
      pd.to_numeric(s, errors='coerce')
     ##如果遇到无效值,第三个选项就是忽略该操作
      pd.to_numeric(s, errors='ignore')
    # 3.DataFrame.apply函数处理每一列
      df[['col2','col3']] = df[['col2','col3']].apply(pd.to_numeric)
    # 4. 类型自动推断
      df = df.infer_objects()
    # 5. 强制转换
      df = df.astype(float)
    

Series 排序

排序功能

print 'series通过索引进行排序:'
print series.sort_index()
print 'series通过值进行排序:'
print series.sort_values()
print 'dataframe根据行索引进行降序排序(排序时默认升序,调节ascending参数):'
print frame.sort_index(ascending=False)
print 'dataframe根据列索引进行排序:'
print frame.sort_index(axis=1)
print 'dataframe根据值进行排序:'
print frame.sort_values(by='a')
print '通过多个索引进行排序:'
print frame.sort_values(by=['a','c'])

相关文章

  • Python 读取mat文件

    参考链接 pandas笔记1 --pandas处理mat表格文件

  • 2020-02-12

    Pandas笔记之创建 Pandas DataFrame DataFrame为Pandas的第二种主要数据结构,是...

  • 大师兄的Python机器学习笔记:Pandas库

    大师兄的Python机器学习笔记:实现评估模型 一、关于Pandas 1. Pandas和Numpy Pandas...

  • pandas索引取数

    注:《利用python进行数据分析》的学习笔记-pandas import pandas as pd import...

  • 数据科学 IPython 笔记本 7.1 Pandas

    7.1 Pandas 原文:Pandas译者:飞龙协议:CC BY-NC-SA 4.0致谢:这个笔记摘自 Wes ...

  • pandas-基础笔记

    Pandas学习笔记-基础篇 参考资料 https://www.yiibai.com/pandas/ 导入模块 S...

  • Pandas学习笔记

    pandas笔记 插入pandas 创建序列 创建dataframe 选择数据 设置值 处理丢失数据 导入导出数据...

  • Pandas: Comparison with SQL

      这是今年年初在学习 Pandas 时,所写的一篇笔记,当时对 Pandas 还不够熟悉,便借助与 SQL (以...

  • Pandas笔记

    Series(一维数据) import numpy as npimport pandas as pdp = pri...

  • pandas笔记

    1.计算数组a中各个元素出现的次数 2.安装pandas 下载适合你python版本的 .whl 文件:https...

网友评论

      本文标题:pandas笔记

      本文链接:https://www.haomeiwen.com/subject/hpvrgqtx.html