#!/usr/bin/python# -*- coding:utf8 -*-
import os
import pandas as pd
import time,datetime
import xlrd #
解決讀入
xlsx
檔案import numpy as np
import matplotlib.pyplot as plt
print os.getcwd() #
顯示當前路徑
path = '/home/songtian/downloads/pythondata'
#設定路徑
os.chdir('/home/songtian/downloads/pythondata') #
改變路徑
print os.getcwd() #
顯示當前改變後路徑
print os.listdir(path) #
顯示path
路徑下的所有檔案
data1 = pd.read_table('data1.txt'
, header=none) #pandas
讀取txt
檔案,而且頭部資訊不為變數,設定
header=none
,而不是
false
data2 = pd.read_table('data2.txt'
, header=none) #pandas
讀取txt
檔案,而且頭部資訊不為變數,設定
header=none
,而不是
false
data3 = pd.read_table('data3.txt'
, header=none) #pandas
讀取txt
檔案,而且頭部資訊不為變數,設定
header=none
,而不是
false
data4 = pd.read_table('data4.txt'
, header=none) #pandas
讀取txt
檔案,而且頭部資訊不為變數,設定
header=none
,而不是
false
data = pd.concat([data1,data2,data3,data4]) #
資料的拼接,預設是按行拼接增加行數,如果橫向拼接需要增加
axis=1
data.columns=['ajbh'
,'hkrq'
,'hkmx'
,'hkze'
,'hkbz'] #
重新賦值變數名
print data.shape
print data.head()
print data1.head() #
顯示資料的前幾行
print data1.tail() #
顯示資料的後幾行
print data1.shape #
顯示資料的大小
print data1.describe() #
自動對數值型變數進行統計分析
data1.columns=['ajbh'
,'hkrq'
,'hkmx'
,'hkze'
,'hkbz'] #
重新賦值變數名
print data1.head()
data1.rename(columns=,
inplace = true) #
修改列名,其中
inplace = true
必須設定
print data1.head()
data1.columns=['ajbh'
,'hkrq'
,'hkmx'
,'hkze'
,'hkbz'] #
重新賦值變數名
group1 = data1[["ajbh"
,"hkmx"]].groupby("ajbh").sum() #groupby
語句進行聚組求和
print group1
ssaj = pd.read_excel('data.xlsx') #pandas
讀取xlsx
檔案print ssaj.head()
print ssaj.shape
print ssaj["bh"] #
提取檢視某一列資料
ssaj = ssaj.drop_duplicates() #
對所有列重複資料進行去重
#ssaj1 = ssaj.drop_duplicates(["bh"]) #
只對某一列進行去重,保留下重複資料的第一行記錄,加入
take_last=true
則保留最後乙個
type(ssaj)
type(ssaj["rq"])
datatest = pd.merge(data,ssaj,
how="left"
,left_on='ajbh'
,right_on='bh') #
兩個資料框左拼接,
how設定方式,
left_on
設定左資料框,
right_on
設定右資料框
print datatest.shape
print datatest.head()
'''a = '2016-09-18'
b = '2016-09-20'
a_ = datetime.datetime.strptime(a,'%y-%m-%d')
b_ = datetime.datetime.strptime(b,'%y-%m-%d')
c = b_ - a_
print c.days
'''
用Python做資料分析初探(四)
我們可以用 dataframe 的describe 函式列出一些統計資訊 該函式列出了dataframe 的行數,均值,方差,最大最小值,25 50 75 處的值,讓我們能對資料有個大概的了解。然後我想按檔案的尺寸排序,了解哪些檔案的尺寸是最大的,用sort values 函式即可。在jupter ...
python資料分析
以網路爬蟲為例,網路爬蟲是乙個自動提取網頁的程式,爬蟲是搜尋引擎的第一步,也是最容易的一部。網頁搜尋,建立索引,查詢排序 用c c 效率高,速度塊,適合通用搜尋引擎做往往爬取。但是它的缺點也特別明顯 開發慢,寫起來又臭又長的。而python無論在資料分析還是在指令碼自動化編寫尚都是簡單,易學的。良好...
python資料分析
陣列間的算術運算 npwhere pandas的使用 np.random.rand 3,4 產生乙個3行4列的矩陣 0 1之間的 in 32 data1 1,2,3,4.0 in 34 arr1 np.array data1 in 35 arr1 out 35 array 1.2.3.4.in 37...