import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
读取文本文件。
pd.read_table(
[‘filepath_or_buffer‘, "sep=‘\\t‘", ‘delimiter=None‘, "header=‘infer‘", ‘names=None‘, ‘index_col=None‘, ‘usecols=None‘, ‘squeeze=False‘, ‘prefix=None‘, ‘mangle_dupe_cols=True‘, ‘dtype=None‘, ‘engine=None‘, ‘converters=None‘, ‘true_values=None‘, ‘false_values=None‘, ‘skipinitialspace=False‘, ‘skiprows=None‘, ‘nrows=None‘, ‘na_values=None‘, ‘keep_default_na=True‘, ‘na_filter=True‘, ‘verbose=False‘, ‘skip_blank_lines=True‘, ‘parse_dates=False‘, ‘infer_datetime_format=False‘, ‘keep_date_col=False‘, ‘date_parser=None‘, ‘dayfirst=False‘, ‘iterator=False‘, ‘chunksize=None‘, "compression=‘infer‘", ‘thousands=None‘, "decimal=b‘.‘", ‘lineterminator=None‘, ‘quotechar=\‘"\‘‘, ‘quoting=0‘, ‘escapechar=None‘, ‘comment=None‘, ‘encoding=None‘, ‘dialect=None‘, ‘tupleize_cols=None‘, ‘error_bad_lines=True‘, ‘warn_bad_lines=True‘, ‘skipfooter=0‘, ‘doublequote=True‘, ‘delim_whitespace=False‘, ‘low_memory=True‘, ‘memory_map=False‘, ‘float_precision=None‘],
)
读取 CSV 文件。
pd.read_csv(
[‘filepath_or_buffer‘, "sep=‘,‘", ‘delimiter=None‘, "header=‘infer‘", ‘names=None‘, ‘index_col=None‘, ‘usecols=None‘, ‘squeeze=False‘, ‘prefix=None‘, ‘mangle_dupe_cols=True‘, ‘dtype=None‘, ‘engine=None‘, ‘converters=None‘, ‘true_values=None‘, ‘false_values=None‘, ‘skipinitialspace=False‘, ‘skiprows=None‘, ‘nrows=None‘, ‘na_values=None‘, ‘keep_default_na=True‘, ‘na_filter=True‘, ‘verbose=False‘, ‘skip_blank_lines=True‘, ‘parse_dates=False‘, ‘infer_datetime_format=False‘, ‘keep_date_col=False‘, ‘date_parser=None‘, ‘dayfirst=False‘, ‘iterator=False‘, ‘chunksize=None‘, "compression=‘infer‘", ‘thousands=None‘, "decimal=b‘.‘", ‘lineterminator=None‘, ‘quotechar=\‘"\‘‘, ‘quoting=0‘, ‘escapechar=None‘, ‘comment=None‘, ‘encoding=None‘, ‘dialect=None‘, ‘tupleize_cols=None‘, ‘error_bad_lines=True‘, ‘warn_bad_lines=True‘, ‘skipfooter=0‘, ‘doublequote=True‘, ‘delim_whitespace=False‘, ‘low_memory=True‘, ‘memory_map=False‘, ‘float_precision=None‘],
)
参数名称 | 说明 |
---|---|
filepath | 文件路径 |
sep | 分隔符 |
header | 选择某行当作列名 |
names | 接受 array 表示列名 |
index_col | 索引列的位置 |
dtype | 写入的数据类型 |
engine | 数据解析引擎 |
nrows | 读取前 n 行 |
pd.read_table()
pd.read_csv()
以 CSV 文件格式存储。
pd.DataFrame.to_csv(
[‘self‘, ‘path_or_buf=None‘, "sep=‘,‘", "na_rep=‘‘", ‘float_format=None‘, ‘columns=None‘, ‘header=True‘, ‘index=True‘, ‘index_label=None‘, "mode=‘w‘", ‘encoding=None‘, ‘compression=None‘, ‘quoting=None‘, ‘quotechar=\‘"\‘‘, "line_terminator=‘\\n‘", ‘chunksize=None‘, ‘tupleize_cols=None‘, ‘date_format=None‘, ‘doublequote=True‘, ‘escapechar=None‘, "decimal=‘.‘"],
)
参数 | 说明 |
---|---|
path_or_buf | 文件路径 |
sep | 分隔符 |
na_rep | 缺失值 |
columns | 写出的列名 |
header | 是否将列名写出 |
index | 是否将行名(索引)写出 |
index_label | 索引名 |
mode | 数据写入模式 |
encoding | 存储文件的编码格式 |
pd.DataFrame().to_csv()
Excel 文件读取。
pd.read_excel(
[‘io‘, ‘sheet_name=0‘, ‘header=0‘, ‘names=None‘, ‘index_col=None‘, ‘usecols=None‘, ‘squeeze=False‘, ‘dtype=None‘, ‘engine=None‘, ‘converters=None‘, ‘true_values=None‘, ‘false_values=None‘, ‘skiprows=None‘, ‘nrows=None‘, ‘na_values=None‘, ‘parse_dates=False‘, ‘date_parser=None‘, ‘thousands=None‘, ‘comment=None‘, ‘skipfooter=0‘, ‘convert_float=True‘, ‘**kwds‘],
)
参数名称 | 说明 |
---|---|
io | 文件路径 |
sheetname | Excel 内数据的分表位置 |
header | 将某行作为列名 |
names | 表示列名 |
index_col | 索引列的位置 |
dtype | 写入的数据类型(列名为 key,数据格式为 values)。 |
Excel 文件的储存。
pd.DataFrame.to_excel(
[‘self‘, ‘excel_writer‘, "sheet_name=‘Sheet1‘", "na_rep=‘‘", ‘float_format=None‘, ‘columns=None‘, ‘header=True‘, ‘index=True‘, ‘index_label=None‘, ‘startrow=0‘, ‘startcol=0‘, ‘engine=None‘, ‘merge_cells=True‘, ‘encoding=None‘, "inf_rep=‘inf‘", ‘verbose=True‘, ‘freeze_panes=None‘],
)
pd.read_excel()
pd.DataFrame.to_excel()
基础属性:values, index, columns, dtypes,size、ndim、shape。
DataFrame 的单列数据是一个 Sereies 。
以字典的方式访问某一个 key 的值(列名)。
也可以直接的 .
一个列名。
也可将多个列索引名称放入一个列表。
可通过 head
和 tail
方法得到多行数据——开始和末尾的连续数据。
pd.DataFrame.head(self, n=5)
pd.DataFrame.tail(self, n=5)
pd.DataFrame.head()
pd.DataFrame.tail()
loc 方法针对 DataFrame 的索引名称的切片方法,能够实现所有单层索引切片操作。
pd.DataFrame.loc[行索引名称或条件, 列索引名称]
Access a group of rows and columns by label(s) or a boolean array.
.loc[]
is primarily label based, but may also be used with a
boolean array.
iloc 接受的必须是行索引和列索引的位置。
pd.DataFrame.iloc[行索引位置, 列索引位置]
Purely integer-location based indexing for selection by position.
.iloc[]
is primarily integer position based (from 0
to
length-1
of the axis), but may also be used with a boolean
array.
使用 loc 时,前后均为闭区间;
使用 iloc 时,为前闭后开。
pd.DataFrame.loc[]
pd.DataFrame.iloc[]
loc 内可以传入表达式,结果返回满足表达式的值。
iloc 不能接受表达式,因为条件表达式返回的为一个布尔值 Series,而 iloc 可以接收的数据类型并不包括 Series。但可以通过取出 .values
传入。
也可使用 ix 切片,此方法更像两种的融合。
pd.DataFrame.ix[行索引的名称或位置或者条件, 列索引名称或位置]
A primarily label-location based indexer, with integer position
fallback.
Warning: Starting in 0.20.0, the .ix indexer is deprecated, in
favor of the more strict .iloc and .loc indexers.
当索引名称和位置存在部分重叠时,ix 默认优先识别名称。
pd.DataFrame.ix[]
直接将部分数据提取出来重新赋值。
此方法无法撤销。
添加一列:新建一个列索引,并对索引下的数据进行赋值。
pd.DataFrame.drop(
[‘self‘, ‘labels=None‘, ‘axis=0‘, ‘index=None‘, ‘columns=None‘, ‘level=None‘, ‘inplace=False‘, "errors=‘raise‘"],
)
参数名称 | 说明 |
---|---|
labels | 代表删除的行或列标签 |
axis | 操作的轴向 |
level | 标签所在的级别 |
inplace | 是否对原数据生效 |
pd.DataFrame.drop()
最小值、均值、中位数、最大值、四分位数、极差、标准差、方差、协方差和变异系数等。
Pandas 基于 NumPy 库。
函数名称 | 说明 |
---|---|
np.min | 最小值 |
np.mean | 均值 |
np.median | 中位数 |
np.var | 方差 |
np.max | 最大值 |
np.ptp | 极差 |
np.std | 标准差 |
np.cov | 协方差 |
可直接通过 describe
方法一次性得出数据框中数值特征的非空值数目、均值、四分位数和标准差。
pd.DataFrame.describe(self, percentiles=None, include=None, exclude=None)
pandas 中描述性统计方法
方法名称 | 说明 |
---|---|
min | 最小值 |
mean | 均值 |
median | 中位数 |
var | 方差 |
sem | 标准误差 |
skew | 样本偏度 |
quantile | 四分位数 |
describe | 描述统计 |
max | 最大值 |
ptp | 极差 |
std | 标准差 |
cov | 协方差 |
mode | 众数 |
kurt | 样本峰度 |
count | 非空值数目 |
mad | 平均绝对离差 |
pd.DataFrame.describe()
描述类别型特征的分布状况,可用频数统计表。
pandas 库实现的方法为 value_counts
。
pd.Series.value_counts(
[‘self‘, ‘normalize=False‘, ‘sort=True‘, ‘ascending=False‘, ‘bins=None‘, ‘dropna=True‘],
)
pandas 还提供了 category 类,可使用 astype
方法将目标特征的数据类型转换为 category 类型。
pd.Series.astype(self, dtype, copy=True, errors=‘raise‘, **kwargs)
describe
方法同样可对 category 类型的数据进行描述性统计,4个统计量分别为列非空元素数目、类别的数目、数目最多的类别和数目最多类别的数目。
pd.Series.value_counts()
pd.Series.astype()
原文:https://www.cnblogs.com/kanglonggege/p/14607243.html