No project description provided
Project description
Neat Panda
Neat Panda contains three main methods/functions, spread, gather and clean_columnames. The ideas for these methods are from the spread and gather functions in the R package tidyr and the make_clean_columns function in the R package janitor.
The spread function is syntactic sugar for the pandas library method pivot and the gather method is syntactic sugar for the pandas method melt.
Features
clean_column_names
import neat_panda
print(df.columns.tolist())
["Country ", "Sub$region", "Actual"]
df = df.clean_column_names()
print(df.columns.tolist())
["country", "sub_region", "actual"]
spread
R
library(tidyr)
library(dplyr)
library(gapminder)
gapminder2 <- gapminder %>% select(country, continent, year, pop)
gapminder3 <- gapminder2 %>% spread(key = year, value = pop)
head(gapminder3, n = 5)
Python
import neat_panda
from gapminder import gapminder
gapminder2 = gapminder[["country", "continent", "year", "pop"]]
gapminder3 = gapminder2.spread(key="year", value="pop")
gapminder3.head()
Output R
# A tibble: 5 x 14
country continent `1952` `1957` `1962` `1967` `1972` `1977` `1982` `1987` `1992` `1997` `2002` `2007`
<fct> <fct> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int>
1 Afghanistan Asia 8425333 9240934 10267083 11537966 13079460 14880372 12881816 13867957 16317921 22227415 25268405 31889923
2 Albania Europe 1282697 1476505 1728137 1984060 2263554 2509048 2780097 3075321 3326498 3428038 3508512 3600523
3 Algeria Africa 9279525 10270856 11000948 12760499 14760787 17152804 20033753 23254956 26298373 29072015 31287142 33333216
4 Angola Africa 4232095 4561361 4826015 5247469 5894858 6162675 7016384 7874230 8735988 9875024 10866106 12420476
5 Argentina Americas 17876956 19610538 21283783 22934225 24779799 26983828 29341374 31620918 33958947 36203463 38331121 40301927
Output Python
country continent 1952 1957 1962 1967 1972 1977 1982 1987 1992 1997 2002 2007
0 Afghanistan Asia 8425333 9240934 10267083 11537966 13079460 14880372 12881816 13867957 16317921 22227415 25268405 31889923
1 Albania Europe 1282697 1476505 1728137 1984060 2263554 2509048 2780097 3075321 3326498 3428038 3508512 3600523
2 Algeria Africa 9279525 10270856 11000948 12760499 14760787 17152804 20033753 23254956 26298373 29072015 31287142 33333216
3 Angola Africa 4232095 4561361 4826015 5247469 5894858 6162675 7016384 7874230 8735988 9875024 10866106 12420476
4 Argentina Americas 17876956 19610538 21283783 22934225 24779799 26983828 29341374 31620918 33958947 36203463 38331121 40301927
gather
R
library(tidyr)
# gapminder3 is obtained as above
gapminder4 <- gather(gapminder3, key="year", "value"="pop", 3:14)
# or
years <- c("1952", "1957", "1962", "1967", "1972", "1977", "1982", "1987", "1992", "1997", "2002", "2007")
gapminder4 <- gather(gapminder3, key="year", "value"="pop", years)
head(gapminder4, n = 5)
Python
import neat_panda
# gapminder3 is obtained as above
gapminder4 = gapminder3.gather(key="year", value="pop", columns=range(2, 13))
# or
gapminder4 = gapminder3.gather(key="year", value="pop", columns=range(0, 2), invert_columns=True)
# or
years = ["1952", "1957", "1962", "1967", "1972", "1977", "1982", "1987", "1992", "1997", "2002", "2007"]
gapminder4 = gapminder3.gather(key="year", value="pop", columns=years)
# or
gapminder4 = gapminder3.gather(key="year", value="pop", columns=["country", "continent"], invert_columns=True)
gapminder4.head()
Output R
# A tibble: 5 x 4
country continent year pop
<fct> <fct> <chr> <int>
1 Afghanistan Asia 1952 8425333
2 Albania Europe 1952 1282697
3 Algeria Africa 1952 9279525
4 Angola Africa 1952 4232095
5 Argentina Americas 1952 17876956
Output Python
country continent year pop
0 Afghanistan Asia 1952 8425333
1 Albania Europe 1952 1282697
2 Algeria Africa 1952 9279525
3 Angola Africa 1952 4232095
4 Argentina Americas 1952 17876956
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
neat_panda-0.9.8.1.tar.gz
(13.2 kB
view details)
Built Distribution
File details
Details for the file neat_panda-0.9.8.1.tar.gz
.
File metadata
- Download URL: neat_panda-0.9.8.1.tar.gz
- Upload date:
- Size: 13.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.3 CPython/3.8.1 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 76d6d54243e227fd81a7a0611d12ebb4868d9fcee66fc5d134ccf64f5c7cb359 |
|
MD5 | f287fb5a7b94532b9d82a93a44185d85 |
|
BLAKE2b-256 | 8ee44229b550335979578f5949aeff00c91384a8c2643bbfeba363385dd2ffe5 |
File details
Details for the file neat_panda-0.9.8.1-py3-none-any.whl
.
File metadata
- Download URL: neat_panda-0.9.8.1-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.3 CPython/3.8.1 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8c0a933e19d71c1ca60fd2f20ba3e01aef37497e78cca64cd00e4e751621cd3 |
|
MD5 | 207b3d6daad053d5bfa66857ffac689c |
|
BLAKE2b-256 | 2e310230211aa39f129f48f31128861e56408a783c8dbab6527521eaf1e54441 |