Skip to main content

A Python package for digital agriculture in vineyard-related activities

Project description

VineyardUtils

A Python package for digital agriculture in vineyard-related activities

VineyardUtils is a Python package designed to assist in handling georeferenced data, processing KML files, and organizing data from field activities in vineyards. This package provides several utility functions and tools to streamline data operations and analysis.

Installation

You can install VineyardUtils using pip:

pip install VineyardUtils

Note: for some functions an external OSGeo package must be installed in the system.

Usage

import VineyardUtils

Functions

Datasampler

cut_data(dataframe, time, timecolumn):
Splits a DataFrame based on time intervals specified.

field_counter(dataf, min_number, exclude_words=None):
Counts occurrences of fields in a DataFrame and appends the most common field as a new column.

get_summary_stats(df, columns=None):
Computes summary statistics from specified columns in a DataFrame.

Elevation

get_elevation(osgeopath, coordmode, geotiff_filename, lat, lon):
Retrieves elevation data from a GeoTIFF file using gdallocationinfo. Make sure that Osgeo4w is installed first since path to its folder is required. 

crop_geotiff(osgeopath, srsmode, minlon, minlat, maxlon, maxlat, source_path_tif, output_path_tif):
Crops a GeoTIFF file to specified bounding box coordinates.

get_elevation_list(osgeopath, sourcename, coordmode, geotiff_filename):
Retrieves a list of elevations from a list of coordinates stored in a file.

add_elevation_to_df(df, latcolname, loncolname, osgeopath, coordmode, geotiff_filename, crop=False, type_srs="EPSG:4326"):
Adds elevation data to a DataFrame based on latitude and longitude columns.

KMLUtils

extract_coordinates(file_path):
Extracts longitude and latitude coordinates from a KML file.

calculate_angle(x1, y1, x2, y2, x3, y3):
Calculates the angle between three points.

iterate_check_angle(longitudes, latitudes, tanklevels, min_angle, max_angle, elevation):
Iterates through a list of coordinates to find tuples based on specified angles.

generate_alpha_shapes(dataframe, alpha=0.2):
Generates alpha shapes from longitude and latitude coordinates.

create_kml(dataframe, row_tuples, kml_filename='outputfile.kml'):
Creates a KML file with polygons and lines based on specified rows of coordinates.

Dependencies

pandas
numpy
scikit-learn
simplekml
alphashape

Contributing

Contributions are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vineyardutils-0.4.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vineyardutils-0.4-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file vineyardutils-0.4.tar.gz.

File metadata

  • Download URL: vineyardutils-0.4.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for vineyardutils-0.4.tar.gz
Algorithm Hash digest
SHA256 b015cd96f274c7aadbcbe94fb97fb8e2be2ce739b09b9f2d0d81ba1335924945
MD5 a0f5d4915700fcb64c1c17203800683e
BLAKE2b-256 1756d18de8f1bb1d59f56a1021e353281b94221598920b4db6440b04c4020ccb

See more details on using hashes here.

File details

Details for the file vineyardutils-0.4-py3-none-any.whl.

File metadata

  • Download URL: vineyardutils-0.4-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for vineyardutils-0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e57c02a0035dc2f2c7d224249a0c3221c7f023662b802df4025dfc1673544625
MD5 735d5e21f1e5e61fde53d9a34bdaccff
BLAKE2b-256 9e1212480a0040cf2b9d64d3c57bceb8f60f7680e4197a2c2d3a02949f27865d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page