python的pandas處理txt文件


一、使用pandas進行類似於sql的簡單操作

使用pandas實現sql中主要的方法

1.對行、列、元素增刪改查

2.數據篩選:loc函數配合條件完成

①與& 或|

②> < == >= <= !=

data1.loc[(data1['userID']!=0)&(data1['location-id']<=10000)]

 

 

 

比較運算符、邏輯運算符、模糊查詢、空判斷

3.分組group by

使用where完成分組

 

4.排序sort_values

①對某一列DataFrame排序

DataFrame.sort_values(by='location-id')

 

 

②按照多列進行排序(當第一個因素相等時,按照第二個因素排序)

df.sort_values(by=['userID','check-in-time'],ascending=[True,True])

 

 

③對series排序

import pandas as pd
import numpy as np
#以下實現排序功能。
series=pd.Series([3,4,1,6],index=['b','a','d','c'])
frame=pd.DataFrame([[2,4,1,5],[3,1,4,5],[5,1,4,2]],columns=['b','a','d','c'],index=['one','two','three'])
print frame
print series
print 'series通過索引進行排序:'
print series.sort_index()
print 'series通過值進行排序:'
print series.sort_values()
print 'dataframe根據行索引進行降序排序(排序時默認升序,調節ascending參數):'
print frame.sort_index(ascending=False)
print 'dataframe根據列索引進行排序:'
print frame.sort_index(axis=1)
print 'dataframe根據值進行排序:'
print frame.sort_values(by='a')
print '通過多個索引進行排序:'
print frame.sort_values(by=['a','c'])

 

 

5.獲取部分行limit star,count

6.聚合:count、max、min、avg、sum

pandas中常見統計函數

函數名 功能
count() 統計個數(NaN不算)
describe() 一次性輸出多個指標:count,mean,std,min,max
min() max() sum() mean() 最小最大求和平均值
media() 中位數
var() 方差
std() 標准差
argmin() 統計最小值的索引位置
argmax() 統計最大值的索引位置
idmax() 統計最大值的索引值
   

7.數據表的合並

merge函數

8.數據提取

loc,iloc和ix函數

二、pandas讀寫文件

1.pandas讀取txt數據

import pandas as pd
data1=pd.read_csv('Gowalla_minitestCheckins.txt', sep='\t', names=['userID','check-in-time','latitude', 'longitude', 'location-id'])

 data1.to_csv('Gowalla_minitestCheckins.csv') print(data1[0:10]) #顯示前10行

# data.to_excel('240.xlsx') 將數據保存為excle格式
#data.to

sep="\t"是原始文檔間的空格每一個文檔可能都不一樣,可能有空格,逗號或者是\n,根據情況選擇names用來設置列名,如果不設置的話,則默認使用第一列作為列名。

img

 

 

 

2.isin() 篩選:

data[data['views'].isin([1])]

img

 

3  分組(統計匯總)

“group by” 指的是涵蓋下列一項或多項步驟的處理流程:

  • 分割:按條件把數據分割成多組;

  • 應用:為每組單獨應用函數;

  • 組合:將處理結果組合成一個數據結構

data.groupby('musicID').sum()#按照音樂分組,統計每首歌的總播放量

data.groupby('musicID').count()#按照音樂分組,統計每首歌出現在數據中的總條數

三、數據表的檢查

1.數據維度

df.shape

 

 

2.數據表信息

df.info()

3.查看數據格式

df.dtypes

4.查看空值

df.isnull()

5.查看唯一值(某一列中不重復的內容)

df['city'].unique()

注意:去除dataframe中重復的內容 dataframe.drop_duplicates()

6.查看數據表數值

df.values

7.查看列名稱

df.columns

8.查看某一列(對應的series形式)

df['要查看的列名']

9.查看前10行 后10行

 

 

 

參考文獻

1.pandas官方文檔

https://pandas.pydata.org/pandas-docs/stable/user_guide/10min.html

2.像Excel一樣使用python進行數據分析

https://www.cnblogs.com/nxld/p/6756492.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM