<a href=“https://www.cnblogs.com/datablog/p/6127000.html”, target="_blank">pandas.read_csv參數詳解
read_csv,read_excel
df = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/''breast-cancer-wisconsin/wdbc.data', header=None)# df: data frame# type(df): <class 'pandas.core.frame.DataFrame'>
header:表頭,默認不為空(為 0,也即將第一行視為表頭)。如果我們要讀取的文件,直接就是數據,沒有所謂的表頭。就需指定 header=None,否則將以文件的第一行作為 df.columns。指定 header=None,df.columns 返回的是列索引,如一個三列的數據:
Int64Index([0, 1, 2], dtype='int64')
index_col:認定原始 csv 文件的第幾列(從0開始計數)為索引列(也即從1開始編號,表示每一行樣本的編號)
parse_datas:指明日期列,為字符串構成的 list;
pandas刪除列,thousands : str, default None,千分位分割符,如“,”或者“."
from pandas import Series, DataFrame
X, y = df.values[:, 2:], df.values[:, 1]# df.values 的類型為 numpy.ndarray
# 也可以
X, y = df.loc[:, 2:].values, df.loc[:, 1].values
dataframe ? numpy.ndarray
df.ax_matrix()
df.values
df.dtypes:會按列給出各個列的數據類型;
df.columns,獲取列名,可直接通過.
的形式進行索引;
比如一個 df.columns 的返回值為:
Index([u'dt', u'kind', u'value'], dtype='object')
pd.read_csv。可直接索引的含義在于,使用 df.dt
或者 df.kind
或者 df.value
進行索引,獲取某列的全部值( 注,pandas 的特點,以列進行索引和修改)。同時索引多個列以構成一個新的表格,
df[['dt', 'value']] # 這樣得到的仍然是 dataframe
支持[]
的索引方式,但關鍵字必須是 list 的形式(['dt', 'value']
),而不可以是 tuple
df.assign():指定新的列(如果列名已存在,則替換;如果不存在,在添加該列),返回一個新的 DataFrame,不對原始的 DataFrame 進行修改;
# 接收 lambda 型函數對象,
>> df = DataFrame({'A':range(1, 6), 'B':np.random.randn(5)})
>> df.assign(ln_A=lambda x: np.log(x.A))A B ln_A
0 1 0.456539 0.000000
1 2 1.022736 0.693147
2 3 -0.158207 1.098612
3 4 0.951304 1.386294
4 5 -1.024661 1.609438# 此時 df 本身并未發生任何改變;
>> df.assign(A = range(21, 26))A B
0 21 0.456539
1 22 1.022736
2 23 -0.158207
3 24 0.951304
4 25 -1.024661
<a href=“http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.assign.html”, target="_blank">pandas.DataFrame.assign
set_index():將某列設置為索引列;
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态