导航:首页 > 编程大全 > 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删除多行数据库相关的资料

热点内容
linux内网映射到外网 浏览:430
魅族相机程序 浏览:630
iphone6刚买来就有点弯 浏览:618
升级ios9滑动来升级 浏览:341
应用宝上传安卓和苹果手机助手 浏览:590
win10创建恢复盘 浏览:453
女神投票网站 浏览:211
灰灰影视网站多少 浏览:730
给文件夹漏沟 浏览:164
联系服务器默认密码 浏览:980
chm文件怎么转换成pdf 浏览:988
javasetup6u22exe 浏览:692
win10rdpusb重定向 浏览:183
邮箱怎么传送文件夹吗 浏览:518
苹果app怎么恢复购买 浏览:929
联想光盘驱动程序下载 浏览:151
文件管理器一次分享多个图片 浏览:819
管家婆销售单样式默认哪个文件夹 浏览:2
为什么待机时数据网络断开 浏览:161
文件继承文件夹权限 浏览:652

友情链接