安装与更新
pip install ricco
pip install ricco -U # 或
pip install ricco --upgrade
文档
便捷方法介绍
数据读写
自动识别文件类型进行读写
- 万能读取数据文件:
rdf()
- 支持
.xls/.xlsx/.csv/.parquet/.shp/.ovkml等多种文件格式
from ricco import rdf
df = rdf('/path/test.csv')
- 读取文件夹中的数据:
rdf_by_dir()
- 适用于读取的文件夹中数据结构相同的多个数据,可指定扩展名,如不指定则读取所有文件;
- 支持的文件格式与
rdf()相同
from ricco import rdf_by_dir
df = rdf_by_dir('/path_dir/', exts=['.csv'])
- 文件保存:
to_file()
- 根据扩展名可自动报错多种格式的文件,支持的文件格式与
rdf()相同- 可自动新建目录,避免了文件保存时需要手动创建目录的麻烦
import pandas as pd
from ricco import to_file
df = pd.DataFrame()
to_file(df, '/path/test.csv')
文件处理
- 文件拆分:
split2x()
- 将文件拆分为多个文件,放置在与文件同名目录下
- 支持的文件格式与
rdf()相同,默认'.csv'
from ricco import split2x
split2x('/path/test.csv', chunksize=1000)
split2x('/path/test.csv', parts=3)
- 文件批量拆分:
reshape_files()
将文件夹的文件大小进行统一拆分,并可传入自定义处理函数
from ricco import reshape_files
def process(df):
return df
# 将'/path_dir/'中的文件,拆分为大小为1000的 csv 文件,并保存在'/path_dir_to/'目录下,处理过程中调用 'process' 方法
reshape_files(
from_dir='/path_dir/',
to_dir='/path_dir_to/',
to_ext='.csv',
chunksize=1000,
func=process,
)
- 万能格式转换:
file_to_x()
批量转换可使用
dir_file_to_x()
from ricco import file_to_x
# 将csv转为Excel文件,保存在相同目录下
file_to_x('/path/test.csv', to_ext='.xlsx')
地理处理
自动识别地理格式并进行转换,节省时间
- 自动转为shapely格式:
auto2shapely()
将带有地理信息的数据,自动转为 shapely 格式的GeoDataframe,地理格式可以为wkb/wkt/geojson等
from ricco import auto2shapely
from ricco import rdf
df = rdf('./test.csv')
auto2shapely(df) # Return: GeoDataframe
- shapely转为任意格式:
shapely2x()
from ricco import rdf
from ricco import shapely2x
df = rdf('./test.csv')
# 转为wkb格式的Dataframe
shapely2x(df, geometry_format='wkb')
- 自动转为任务任意地理格式:
auto2x()
from ricco import rdf
from ricco import auto2x
df = rdf('./test.csv')
# 转为wkb格式的Dataframe
auto2x(df, geometry_format='wkb')
空间计算
- 投影变换:
projection()
根据经纬度自动获取 epsg code 进行投影,也可以指定城市和 epsg code 进行投影; 该方法是对geometry列进行投影, 如需要对经纬度进行投影,请使用
projection_lnglat()方法
from ricco.geometry.df import projection
- 面积计算:
get_area()
自动地理转换、投影、计算面积,新增面积列
area,不改变原数据
from ricco.geometry.df import get_area
- 近邻分析:
nearest_kdtree()和nearest_neighbor()
计算一个数据集中的元素到另一个数据集中全部元素的最短距离(单位:米), 同时可进行其他统计
from ricco.geometry.df import nearest_kdtree
from ricco.geometry.df import nearest_neighbor
- buffer计算:
buffer()
生成指定半径的buffer的geometry列
from ricco.geometry.df import buffer
- 空间统计:
spatial_agg()
对面数据覆盖范围内的点数据进行空间统计
from ricco.geometry.df import spatial_agg
- 空间连接打标签:
mark_tags_v2()
from ricco import rdf
from ricco import mark_tags_v2
df_poi = rdf('./poi.csv')
df_plate = rdf('./plate.csv')
# 给POI数据打上plate_name的标签
mark_tags_v2(df_poi, df_plate, col_list='plate_name')
Release files for ricco 3.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ricco-3.0.0.tar.gz | 1.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ricco-3.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.7 MB
Release files / ricco-3.0.0.tar.gz
| Download URL | ricco-3.0.0.tar.gz |
|---|---|
| Size | 1.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b65066dffada2e5066ce61e174ff08566f63546fe7c40d17711083aa3e1549b3
|
|
BLAKE2b-256 checksum How to use checksums |
1b0caf1cc0dad5ee8d707a35172064fae3244f2958b7f505afd5d594f89a1478
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / ricco-3.0.0-py3-none-any.whl
| Download URL | ricco-3.0.0-py3-none-any.whl |
|---|---|
| Size | 1.9 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a35092eddbba708e830f592c16debbe3e7330d3d6e86c233a4e667aab4e8d910
|
|
BLAKE2b-256 checksum How to use checksums |
e4310ce70acee9f7912d8d26bdc2f011052f129f6fa9ec46cff8cebd7f02e276
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|