Ref: Pandas Tutorial: DataFrames in Python
Ref: pandas.DataFrame
Ref: Creating, reading, and writing reference
- pandas.DataFrame()
- pandas.Series()
- pandas.read_csv()
- pandas.DataFrame.shape
- pandas.DataFrame.head
- pandas.read_excel()
- pandas.to_csv()
- pandas.to_excel()
Ref: Indexing, selecting, assigning reference
- pandas.iloc(): 类似于Excel中的Cell函数,将其看做Matrix
- pandas.loc()
一、基本概念
- class
pandas.
DataFrame
(data=None, index=None, columns=None, dtype=None, copy=False) -
Parameters: data : 数据主体部分,numpy ndarray (structured or homogeneous), dict, or DataFrame
Dict can contain Series, arrays, constants, or list-like objects
Changed in version 0.23.0: If data is a dict, argument order is maintained for Python 3.6 and later.
index : 行名称,默认 0, 1, 2, ..., n, Index or array-like
Index to use for resulting frame. Will default to RangeIndex if no indexing information part of input data and no index provided
columns : 列名称,默认 0, 1, 2, ..., n, Index or array-like
Column labels to use for resulting frame. Will default to RangeIndex (0, 1, 2, …, n) if no column labels are provided
dtype : 数据类型,dtype, default None
Data type to force. Only a single dtype is allowed. If None, infer
copy : boolean, default False
Copy data from inputs. Only affects DataFrame / 2d ndarray input
data[1:,0] means the first column, data[0,1:] means the first row.
>>> import numpy as np >>> import pandas as pd >>> data = np.array([ ['','Col1','Col2'], ['Row1',1,2], ['Row2',3,4] ]) >>> print(pd.DataFrame(data=data[1:,1:], index=data[1:,0], columns=data[0,1:])) Col1 Col2 Row1 1 2 Row2 3 4
or
>>> data = np.array([ [1,2], [3,4]]) >>> print(pd.DataFrame(data=data, index=['Row1','Row2'], columns=['Col1','Col2'])) Col1 Col2 Row1 1 2 Row2 3 4
Ref: pandas dataframe.apply() 实现对某一行/列进行处理获得一个新行/新列
Ref: 在pandas中遍历DataFrame行
二、相关方法:
DataFrame.apply(func, axis=0, broadcast=None, raw=False, reduce=None, result_type=None, args=(), **kwds)
Apply a funciton along an axis of the DataFrame. (类似Excel中对一列或者一行数据进行摸个函数的处理)
Objects passed to the function are Series objects whose index is either the DataFrame's index (axis=0) or the DataFrame's columns (axis=1).
Ref: pandas.Series.value_counts
Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)
Returns object containing counts of unique values.
The resulting object will be in desceding order so that the first element is the most frequent-occurring element. Excludes NA values by default.
DataFrame.read_csv(): 可以将 Str 通过 StringIO() 转为文件缓存,可以直接用此方法
>>> from io import StringIO >>> a = ''' A, B, C 1,2,3 4,5,6 7,8,9 ''' >>> a ' A, B, C 1,2,3 4,5,6 7,8,9 ' >>> data = pd.read_csv(StringIO(a)) >>> data A B C 0 1 2 3 1 4 5 6 2 7 8 9