在csv中使用主键和唯一键

csvke的Python项目详细描述


csvkey

在非常有限的情况下,你不需要表现 希望使用csv作为数据库。

示例

fromcsvkeyimportConnectionimportpandasaspdimportnumpyasnp# prepare DataFramedata=pd.DataFrame()data['A']=pd.Series([1,2,3],dtype='int')data['B']=pd.Series([4,5,6],dtype='float32')data['C']=pd.Series([7,8,9],dtype='float64')# register databaseconn=Connection()conn.initialize(data,r'C:\TEST\database.csv',primary=['A','B'],unique=['C'],notnull=['C'])# database.csv and the configuration file (default: csv.conf) are generated in C:\TEST\# set 'A' and 'B' columns as a primary key# values in 'C' column must be unique and not NaN# connect to database.csvconn.connect(r'C:\TEST\database.csv')conn.df.dtypes# dtypes are preserved# change values in conn.dfconn.df.loc[0,'C']=8conn.commit()# raise ValueError because 8 is not uniqueconn.df.loc[0,'C']=np.nanconn.commit()# raise ValueError because NaN is not allowed in 'C'conn.df.loc[0,'C']=-1conn.commit()# OKconn.df.loc[2,['A','B']]=[1,4]conn.commit()# raise ValueError because primary keys are duplicated

安装

pip install csvkey

要求

熊猫
皮亚姆

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
amazon web services Java AWS s3:如何使用Md5预签名url设置和上载内容   twitter使用java从推文中排除一些单词   如何在GUI java中添加延迟时间   java程序,如何使用Outputstream发送两次消息   java为什么是javax。在将Yasson与JSONB一起使用时,Glassfish中的json需要作为依赖项吗?   如何从dist文件夹中读取文件   java如何获取与模式匹配的文件列表   java如何使用Intent从Android应用程序发送彩信?   java限制对Spring的依赖,同时又不丧失框架的功能   java是否将捕获异常报告给Firebase/Fabric等?   用jdbcjava实现mysql分页   给定URI的java注释检索   java是序列化/反序列化公共枚举的简单方法?   java如何使用jMockit模拟本机方法