---
title: "Feature"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Feature}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
eval = FALSE
)
```
`rgeeExtra` serves as a wrapper for the Python package named `eeExtra`. The creation of `eeExtra` was driven by a need to consolidate various third-party GEE Javascript and Python packages and projects found on GitHub in the same programming language and style, avoiding dependencies. `rgeeExtra` ensures a seamless integration of `eeExtra` within the R ecosystem
```{r setup}
library(rgeeExtra)
library(rgee)
ee_Initialize() # Initialize the Google Earth Engine API connection
extra_Initialize() # Load the extended functionalities of rgeeExtra
```
## **Features for `ee$Feature`**
`ee$Feature` objects represent geographic features which are fundamental to spatial analyses. Enhanced manipulation of these objects in R can significantly streamline workflows.
### **1. Names**
The `names` function for `ee$Feature` objects efficiently extracts the names of properties, providing valuable insights into the attributes of individual features within Earth Engine FeatureCollections.
```{r}
# Retrieve the first feature from the 'WRI/GPPD/power_plants' Feature Collection.
fc <- ee$FeatureCollection('WRI/GPPD/power_plants')[[1]]
# List the properties and methods available for the feature.
names(fc)
# Result:
# [1] "args" "aside" "copyProperties"
# [4] "encode" "encode_cloud_value" "freeze"
# [7] "func" "geometry" "get"
# [10] "getArray" "getInfo" "getNumber"
# [13] "getString" "initialize" "isVariable"
# [16] "name" "propertyNames" "replaceProperties"
# [19] "reset" "serialize" "set"
# [22] "setMulti" "toDictionary" "varName"
```