本文共 1624 字,大约阅读时间需要 5 分钟。
– Start
import numpy as npimport pandas as pdfrom datetime import datetimepd.set_option('display.max_columns', 100)pd.set_option('display.max_rows', 100)pd.set_option('display.width', 1000)# 通过读取 Excel 文件创建 DataFramedf = pd.read_excel("index300.xls", sheet_name="Price Return Index", index_col=0)print(df)# 筛选某一列或几列print(df['收盘Close'])print(df.收盘Close)print(df[['开盘Open', '收盘Close']])# 根据行标签,筛选某一行或几行print(df.loc[datetime(2021, 6, 15, 0, 0, 0)])print(df.loc[datetime(2021, 6, 15, 0, 0, 0):datetime(2021, 6, 1, 0, 0, 0)])# 根据行位置,筛选某一行或几行print(df.iloc[0])print(df.iloc[0:5])print(df[0:5])# 根据行标签,筛选行和列print(df.loc[[datetime(2021, 6, 1, 0, 0, 0), datetime(2021, 5, 31, 0, 0, 0)], ['开盘Open', '收盘Close']])print(df.loc[datetime(2021, 6, 1, 0, 0, 0):datetime(2021, 5, 31, 0, 0, 0), '开盘Open':'收盘Close'])print(df.loc[:, '开盘Open':'收盘Close']) # 筛选列print(df.loc[datetime(2021, 6, 1, 0, 0, 0):datetime(2021, 5, 31, 0, 0, 0), :]) # 筛选行# 根据行位置,筛选行和列print(df.iloc[[0, 1], [5, 8]])print(df.iloc[0:5, 5:9])print(df.iloc[:, [5, 8]]) # 筛选列print(df.iloc[0:5, :]) # 筛选行# 根据行标签,筛选单元格print(df.loc[datetime(2021, 6, 1, 0, 0, 0), '收盘Close'])print(df.at[datetime(2021, 6, 1, 0, 0, 0), '收盘Close'])# 根据行位置,筛选单元格print(df.iloc[0, 8])print(df.iat[0, 8])# 筛选值print(df[df['收盘Close'] > 5300])print(df[df['收盘Close'] == df['收盘Close'].max()])print(df[df['收盘Close'] > 5300][['开盘Open', '收盘Close']])print(df[df['涨跌幅(%)Change(%)'].isin(['0.51', '-0.66'])])print(df[(df['开盘Open'] > 5300) & (df['收盘Close'] > 5300)])print(df[(df['开盘Open'] > 5300) | (df['收盘Close'] > 5300)])
– 更多参见:
– 声 明:转载请注明出处 – Last Updated on 2021-06-19 – Written by ShangBo on 2018-11-01 – End