導航:首頁 > 編程大全 > pandas刪除多行資料庫

pandas刪除多行資料庫

發布時間:2024-10-01 17:56:11

① 統計幾十萬行的數據什麼資料庫

mysql 就可以了
甚至sqlite這種內嵌式資料庫都可以
或者直接用第三方計算庫 比如pandas

② python獲取資料庫數據一共有多少行(2023年最新分享)

導讀:很多朋友問到關於python獲取資料庫數據一共有多少行的相關問題,本文首席CTO筆記就來為大家做個詳細解答,供大家參考,希望對大家有所幫助!一起來看看吧!

Python資料庫API(DBAPI)

雖然Python需要為操作不同的資料庫使用不同的模塊,但不同的資料庫模塊並非沒有規律可循,因為它們基本都遵守Python制訂的DBAPI協議,目前該協議的最新版本是2.0,因此這些資料庫模塊有很多操作其實都是相同的。下面先介紹不同資料庫模塊之間的通用內容。

全局變數

Python推薦支持DBAPI2.0的資料庫模塊都應該提供如下3個全局變數:

apilevel:該全局變數顯示資料庫模塊的API版本號。對於支持DBAPI2.0版本的資料庫模塊來說,該變數值通常就是2.0。如果這個變數不存在,則可能該資料庫模塊暫時不支持DBAPI2.0。讀者應該考慮選擇使用支持該資料庫的其他資料庫模塊。

threadsafety:該全局變數指定資料庫模塊的線程安全等級,該等級值為0~3,其中3代表該模塊完全是線程安全的;1表示該模塊具有部分線程安全性,線程可以共享該模塊,但不能共享連接;0則表示線程完全不能共享該模塊。

paramstyle:該全局變數指定當SQL語句需要參數時,可以使用哪種風格的參數。該變數可能返回如下變數值:

format:表示在SQL語句中使用Python標準的格式化字元串代表參數。例如,在程序中需要參數的地方使用%s,接下來程序即可為這些參數指定參數值。

pyformat:表示在SQL語句中使用擴展的格式代碼代表參數。比如使用%(name),這樣即可使用包含key為name的字典為該參數指定參數值。

qmark:表示在SQL語句中使用問號(?)代表參數。在SQL語句中有幾個參數,全部用問號代替。

numeric:表示在SQL語句中使用數字佔位符(:N)代表參數。例如:1代表一個參數,:2也表示一個參數,這些數字相當於參數名,因此它們不一定需要連續。

named:表示在SQL語句中使用命名佔位符(:name)代表參數。例如:name代表一個參數,:age也表示一個參數。

通過查閱這些全局變數,即可大致了解該資料庫API模塊的對外的編程風格,至於該模塊內部的實現細節,完全由該模塊實現者負責提供,通常不需要開發者關心。

資料庫API的核心類

遵守DBAPI2.0協議的資料庫模塊通常會提供一個connect()函數,該函數用於連接資料庫,並返回資料庫連接對象。

資料庫連接對象通常會具有如下方法和屬性:

cursor(factory=Cursor):打開游標。

commit():提交事務。

rollback():回滾事務。

close():關閉資料庫連接。

isolation_level:返回或設置資料庫連接中事務的隔離級別。

in_transaction:判斷當前是否處於事務中。

上面第一個方法可以返回一個游標對象,游標對象是PythonDBAPI的核心對象,該對象主要用於執行各種SQL語句,包括DDL、DML、select查詢語句等。使用游標執行不同的SQL語句返回不同的數據。

游標對象通常會具有如下方法和屬性:

execute(sql[,parameters]):執行SQL語句。parameters參數用於為SQL語句中的參數指定值。

executemany(sql,seq_of_parameters):重復執行SQL語句。可以通過seq_of_parameters序列為SQL語句中的參數指定值,該序列有多少個元素,SQL語句被執行多少次。

executescript(sql_script):這不是DBAPI2.0的標准方法。該方法可以直接執行包含多條SQL語句的SQL腳本。

fetchone():獲取查詢結果集的下一行。如果沒有下一行,則返回None。

fetchmany(size=cursor.arraysize):返回查詢結果集的下N行組成的列表。如果沒有更多的數據行,則返回空列表。

fetchall():返回查詢結果集的全部行組成的列表。

close():關閉游標。

rowcount:該只讀屬性返回受SQL語句影響的行數。對於executemany()方法,該方法所修改的記錄條數也可通過該屬性獲取。

lastrowid:該只讀屬性可獲取最後修改行的rowid。

arraysize:用於設置或獲取fetchmany()默認獲取的記錄條數,該屬性默認為1。有些資料庫模塊沒有該屬性。

description:該只讀屬性可獲取最後一次查詢返回的所有列的信息。

connection:該只讀屬性返回創建游標的資料庫連接對象。有些資料庫模塊沒有該屬性。

總結來看,Python的DBAPI2.0由一個connect()開始,一共涉及資料庫連接和游標兩個核心API。它們的分工如下:

資料庫連接:用於獲取游標、控制事務。

游標:執行各種SQL語句。

掌握了上面這些API之後,接下來可以大致歸納出PythonDBAPI2.0的編程步驟。

操作資料庫的基本流程

使用PythonDBAPI2.0操作資料庫的基本流程如下:

調用connect()方法打開資料庫連接,該方法返回資料庫連接對象。

通過資料庫連接對象打開游標。

使用游標執行SQL語句(包括DDL、DML、select查詢語句等)。如果執行的是查詢語句,則處理查詢數據。

關閉游標。

關閉資料庫連接。

下圖顯示了使用PythonDBAPI2.0操作資料庫的基本流程。

python數據分析怎樣查有多少行數據

from?__future__?import?print_functionimport?timeif?__name__?==?'__main__':

????import?sys

????start?=?time.time()

????with?open(sys.argv[1],'rb')?as?f:

????????count?=?0

????????last_data?=?' '

????????while?True:

????????????data?=?f.read(0x400000)

????????????if?not?data:

????????????????break

????????????count?+=?data.count(b' ')

????????????last_data?=?data

????????if?last_data[-1:]?!=?b' ':

????????????count?+=?1?#?Remove?this?if?a?wc-like?count?is?needed

????end?=?time.time()

????print(count)

????print((end-start)?*?1000)

這跟wc-l略有區別,如果要跟wc-l一致的話,可以將帶注釋的行刪掉。

這里沒有處理universalnewline、忽略空行等邏輯,如果需要這些功能,程序會變得復雜一些。

請教python操作資料庫表的結果集的整理

,選擇開始菜單中→程序→【ManagementSQLServer2008】→【SQLServerManagementStudio】命令,打開【SQLServerManagementStudio】窗口,並使用Windows或SQLServer身份驗證建立連接。

在【對象資源管理器】窗口中展開伺服器,然後選擇【資料庫】節點

右鍵單擊【資料庫】節點,從彈出來的快捷菜單中選擇【新建資料庫】命令。

執行上述操作後,會彈出【新建資料庫】對話框。在對話框、左側有3個選項,分別是【常規】、【選項】和【文件組】。完成這三個選項中的設置會後,就完成了資料庫的創建工作,

在【資料庫名稱】文本框中輸入要新建資料庫的名稱。例如,這里以「新建的資料庫」。

在【所有者】文本框中輸入新建資料庫的所有者,如sa。根據資料庫的使用情況,選擇啟用或者禁用【使用全文索引】復選框。

在【資料庫文件】列表中包括兩行,一行是資料庫文件,而另一行是日記文件。通過單擊下面的【添加】、【刪除】按鈕添加或刪除資料庫文件。

切換到【選項頁】、在這里可以設置資料庫的排序規則、恢復模式、兼容級別和其他屬性。

切換到【文件組】頁,在這里可以添加或刪除文件組。

完成以上操作後,單擊【確定】按鈕關閉【新建資料庫】對話框。至此「新建的數據」資料庫創建成功。新建的資料庫可以再【對象資源管理器】窗口看到。

python導入txt到資料庫每8行寫入

#?8行結束有一個空白行

with?open('data.txt')?as?data:

????line?=?1

????sql?=?'insert?into?fz_esx?values(%s,%s,%s,%s,%s,%s,%s,%s)'

????values?=?[]

????for?d?in?data:

????????if?d?!=?'':

????????????values.append('"%s"'?%?str(d))

????????if?line?%?9?==?0:

????????????#?執行sql插入代碼

????????????#?urs.exec(sql?%?tuple(values))

????????????del?values[:]

????????line?+=?1

????????

#?當然如果不行浪費sql資源,可以全部拼接完inert語句?一次執行

#?如果是生產環境,?建議使用隊列的思路,例如"芹菜"庫

python把數據寫入文件,規定每個文件只有固定行數

要規定行數的話,就得先規定列數了。否則從頭到尾就一行,也就沒有意義了,如果可以確定行尾的話,也可以用換行確定計數。例:

foriteminyourdata:

count=0

f=open('yourfile','w')

while(count20):

f.write(yourdata)

count+=1

f.close()

python中如何將表中的數據做成一張表,然後再從中取出數據?

第一部分是生成數據表,常見的生成方法有兩種,第一種是導入外部數據,第二種是直接寫入數據。Excel中的文件菜單中提供了獲取外部數據的功能,支持資料庫和文本文件和頁面的多種數據源導入。

獲取外部數據

python支持從多種類型的數據導入。在開始使用python進行數據導入前需要先導入pandas庫,為了方便起見,我們也同時導入numpy庫。

1importnumpyasnp

2importpandasaspd

導入數據表

下面分別是從excel和csv格式文件導入數據並創建數據表的方法。代碼是最簡模式,裡面有很多可選參數設置,例如列名稱,索引列,數據格式等等。感興趣的朋友可以參考pandas的

官方文檔。

1df=pd.DataFrame(pd.read_csv(『name.csv』,header=1))

2df=pd.DataFrame(pd.read_excel(『name.xlsx』))

創建數據表

另一種方法是通過直接寫入數據來生成數據表,excel中直接在單元格中輸入數據就可以,python中通過下面的代碼來實現。生成數據表的函數是pandas庫中的DateFrame函數,數據表一共有6行數據,每行有6個欄位。在數據中我們特意設置了一些NA值和有問題的欄位,例如包含空格等。後面將在數據清洗步驟進行處理。後面我們將統一以DataFrame的簡稱df來命名數據表。

1df=pd.DataFrame({『id』:[1001,1002,1003,1004,1005,1006],

2『date』:pd.date_range(『20130102』,periods=6),

3『city』:['Beijing',『SH』,』guangzhou',『Shenzhen』,『shanghai』,'BEIJING'],

4『age』:[23,44,54,32,34,32],

5『category』:[『100-A』,『100-B』,『110-A』,『110-C』,『210-A』,『130-F』],

6『price』:[1200,np.nan,2133,5433,np.nan,4432]},

7columns=[『id』,『date』,『city』,『category』,『age』,『price』])

這是剛剛創建的數據表,我們沒有設置索引列,price欄位中包含有NA值,city欄位中還包含了一些臟數據。

數據表檢查

python中處理的數據量通常會比較大,所以就需要我們對數據表進行檢查。比如我們之前的文章中介紹的紐約計程車數據和Citibike的騎行數據,數據量都在千萬級,我們無法一目瞭然的了解數據表的整體情況,必須要通過一些方法來獲得數據表的關鍵信息。數據表檢查的另一個目的是了解數據的概況,例如整個數據表的大小,所佔空間,數據格式,是否有空值和重復項和具體的數據內容。為後面的清洗和預處理做好准備。

數據維度(行列)

Excel中可以通過CTRL向下的游標鍵,和CTRL向右的游標鍵來查看行號和列號。Python中使用shape函數來查看數據表的維度,也就是行數和列數,函數返回的結果(6,6)表示數據表有6行,6列。下面是具體的代碼。

1#查看數據表的維度

2df.shape

3(6,6)

數據表信息

使用info函數查看數據表的整體信息,這里返回的信息比較多,包括數據維度,列名稱,數據格式和所佔空間等信息。

1#數據表信息

2df.info()

4class『pandas.core.frame.DataFrame』

5RangeIndex:6entries,0to5

6Datacolumns(total6columns):

7id6non-nullint64

8date6non-nulldatetime64[ns]

9city6non-nullobject

10category6non-nullobject

11age6non-nullint64

12price4non-nullfloat64

13dtypes:datetime64ns,float64(1),int64(2),object(2)

14memoryusage:368.0bytes

查看數據格式

Excel中通過選中單元格並查看開始菜單中的數值類型來判斷數據的格式。Python中使用dtypes函數來返回數據格式。

Dtypes是一個查看數據格式的函數,可以一次性查看數據表中所有數據的格式,也可以指定一列來單獨查看。

1#查看數據表各列格式

2df.dtypes

3

4idint64

5datedatetime64[ns]

6cityobject

7categoryobject

8ageint64

9pricefloat64

10dtype:object

11

12#查看單列格式

13df[『B』].dtype

14

15dtype(『int64』)

查看空值

Excel中查看空值的方法是使用「定位條件」功能對數據表中的空值進行定位。「定位條件」在「開始」目錄下的「查找和選擇」目錄中。

Isnull是Python中檢驗空值的函數,返回的結果是邏輯值,包含空值返回True,不包含則返回False。可以對整個數據表進行檢查,也可以單獨對某一列進行空值檢查。

df_isnull

1#檢查特定列空值

2df[『price』].isnull()

3

40False

51True

62False

73False

84True

95False

10Name:price,dtype:bool

查看唯一值

Excel中查看唯一值的方法是使用「條件格式」對唯一值進行顏色標記。Python中使用unique函數查看唯一值。

Unique是查看唯一值的函數,只能對數據表中的特定列進行檢查。下面是代碼,返回的結果是該列中的唯一值。類似與Excel中刪除重復項後的結果。

1#查看city列中的唯一值

2df[『city』].unique()34array(['Beijing',『SH』,』guangzhou',『Shenzhen』,『shanghai』,'BEIJING'],dtype=object)

查看數據表數值

Python中的Values函數用來查看數據表中的數值。以數組的形式返回,不包含表頭信息。

1#查看數據表的值

2df.values

3

4array([[1001,Timestamp(『2013-01-0200:00:00』),'Beijing',『100-A』,23,

51200.0],

6[1002,Timestamp(『2013-01-0300:00:00』),『SH』,『100-B』,44,nan],

7[1003,Timestamp(『2013-01-0400:00:00』),』guangzhou',『110-A』,54,

82133.0],

9[1004,Timestamp(『2013-01-0500:00:00』),『Shenzhen』,『110-C』,32,

105433.0],

11[1005,Timestamp(『2013-01-0600:00:00』),『shanghai』,『210-A』,34,

12nan],

13[1006,Timestamp(『2013-01-0700:00:00』),'BEIJING',『130-F』,32,

144432.0]],dtype=object)

查看列名稱

Colums函數用來單獨查看數據表中的列名稱。

1#查看列名稱

2df.columns

3

4Index([『id』,『date』,『city』,『category』,『age』,『price』],dtype=『object』)

查看前10行數據

Head函數用來查看數據表中的前N行數據,默認head()顯示前10行數據,可以自己設置參數值來確定查看的行數。下面的代碼中設置查看前3行的數據。

1#查看前3行數據``df.head(``3``)

Tail行數與head函數相反,用來查看數據表中後N行的數據,默認tail()顯示後10行數據,可以自己設置參數值來確定查看的行數。下面的代碼中設置查看後3行的數據。

1#查看最後3行df.tail(3)

結語:以上就是首席CTO筆記為大家介紹的關於python獲取資料庫數據一共有多少行的全部內容了,希望對大家有所幫助,如果你還想了解更多這方面的信息,記得收藏關注本站。

③ 如何用python的pandas包的to_csv方法將中文輸出到csv文件中

文本內容如下:

12-06 14:50:23.600: I/ActivityManager(605): Displayed com.suning.numberlocation/.NumberLocationActivity: +125ms

12-06 14:50:52.581: I/ActivityManager(605): Displayed com.suning.numberlocation/.NumberLocationActivity: +126ms

12-06 14:51:21.391: I/ActivityManager(605): Displayed com.suning.numberlocation/.NumberLocationActivity: +108ms

12-06 14:51:50.652: I/ActivityManager(605): Displayed com.suning.numberlocation/.NumberLocationActivity: +121ms

想使用python截取每一行中的特定數據,然後把它們寫入到csv文件中!

想截取每一行中的3段字元串 「numberlocation」 「NumberLocationActivity」 「125」

在CSV中看到的期待結果是(一行輸出3段字元串):

numberlocation NumberLocationActivity 125

④ 怎麼利用pandas做數據分析

Pandas是Python下一個開源數據分析的庫,它提供的數據結構DataFrame極大的簡化了數據分析過程中一些繁瑣操作。
1. 基本使用:創建DataFrame. DataFrame是一張二維的表,大家可以把它想像成一張Excel表單或者Sql表。Excel 2007及其以後的版本的最大行數是1048576,最大列數是16384,超過這個規模的數據Excel就會彈出個框框「此文本包含多行文本,無法放置在一個工作表中」。Pandas處理上千萬的數據是易如反掌的sh事情,同時隨後我們也將看到它比SQL有更強的表達能力,可以做很多復雜的操作,要寫的code也更少。
說了一大堆它的好處,要實際感觸還得動手碼代碼。首要的任務就是創建一個DataFrame,它有幾種創建方式:
(1)列表,序列(pandas.Series), numpy.ndarray的字典
二維numpy.ndarray
別的DataFrame
結構化的記錄(structured arrays)
(2)其中,二維ndarray創建DataFrame,代碼敲得最少:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(10, 4))
df
0 1 2 3
0 0.927474 0.127571 1.655908 0.570818
1 -0.425084 -0.382933 0.468073 -0.862898
2 -1.602712 -0.225793 -0.688641 1.167477
3 -1.771992 -0.692575 -0.693494 -1.063697
4 -0.456724 0.371165 1.883742 -0.344189
5 1.024734 0.647224 1.134449 0.266797
6 1.247507 0.114464 2.271932 -0.682767
7 -0.190627 -0.096997 -0.204778 -0.440155
8 -0.471289 -1.025644 -0.741181 -1.707240
9 -0.172242 0.702187 -1.138795 -0.112005
(3)通過describe方法,可以對df中的數據有個大概的了解:
df.describe()
0 1 2 3
count 10.000000 10.000000 10.000000 10.000000
mean -0.189096 -0.046133 0.394722 -0.320786
std 1.027134 0.557420 1.258019 0.837497
min -1.771992 -1.025644 -1.138795 -1.707240
25% -0.467648 -0.343648 -0.692281 -0.817865
50% -0.307856 0.008734 0.131648 -0.392172
75% 0.652545 0.310266 1.525543 0.172096
max 1.247507 0.702187 2.271932 1.167477
2. 改變cell。
3. group by。
4. 讀寫文件。

閱讀全文

與pandas刪除多行資料庫相關的資料

熱點內容
ps入門必備文件 瀏覽:348
以前的相親網站怎麼沒有了 瀏覽:15
蘋果6耳機聽歌有滋滋聲 瀏覽:768
怎麼徹底刪除linux文件 瀏覽:379
編程中字體的顏色是什麼意思 瀏覽:534
網站關鍵詞多少個字元 瀏覽:917
匯川am系列用什麼編程 瀏覽:41
筆記本win10我的電腦在哪裡打開攝像頭 瀏覽:827
醫院單位基本工資去哪個app查詢 瀏覽:18
css源碼應該用什麼文件 瀏覽:915
編程ts是什麼意思呢 瀏覽:509
c盤cad佔用空間的文件 瀏覽:89
不銹鋼大小頭模具如何編程 瀏覽:972
什麼格式的配置文件比較主流 瀏覽:984
增加目錄word 瀏覽:5
提取不相鄰兩列數據如何做圖表 瀏覽:45
r9s支持的網路制式 瀏覽:633
什麼是提交事務的編程 瀏覽:237
win10打字卡住 瀏覽:774
linux普通用戶關機 瀏覽:114

友情鏈接