We have scraped a dataset consisting of all chemical elements and around 80 properties and placed them in a more easily accessible format.
This R package includes two vignettes that demonstrate a few different approaches to construct the periodic table and how to plot a property. Our hope is that this package will make it easier for chemists and others interested in the chemical sciences to generate periodic tables of whatever trend they wish to visualise.
This package was based on some of my old projects (see Earlier work below). But I reworked most of the code in honour of the #IYPT2019 and released it as an R package.
If that piqued your curiosity, you might also like to read these blog posts that provide some more examples of working with the periodic data:
- Properties of the elements: data collection and ggplot2 tables
- All available elemental properties plotted as periodic tables
To install this package on your system, I suggest:
install.packages("remotes")
remotes::install_github("solarchemist/periodicdata")
To also build the vignette locally on your computer when installing this package, modify the last line to:
remotes::install_github("solarchemist/periodicdata", build_opts = c("--no-resave-data", "--no-manual"), build_vignettes = TRUE)
Check out the source code from this repo:
git clone https://github.com/solarchemist/periodicdata.git
I suggest the following package rebuild procedure:
- Run
devtools::check()
. Should complete with no errors, warnings, or notes:
── R CMD check results ──────────────────────────── periodicdata 0.2.2.9000 ────
Duration: 19.1s
0 errors ✔ | 0 warnings ✔ | 0 notes ✔
- Run
devtools::build_vignettes()
in the console. This recompiles the vignette and populates thedoc/
directory. - Manually remove the line
doc
from.gitignore
(the build step keeps adding it).
Contributions are welcome, no matter whether code, bug reports or suggestions!
To correct or extend this dataset please open an issue or a create a pull request. Other contributions or feedback are also welcome via this repo or contact me directly.
- IUPAC periodic table of elements
- periodictable.com, provides "curated data provided by Mathematica's ElementData function from Wolfram Research, Inc." on their website as HTML/CSS tables
- PeriodicTable CRAN package by Julien Idé with data from Data Explorer
- Wolfram's
ElementData()
function - https://periodic-table.io
- NIST Chemistry WebBook
- Winter, M. "WebElements." 2007
- Atomic Weights and Isotopic Compositions with Relative Atomic Masses, NIST Physical Measurement Laboratory
- Barbalace, K. "Periodic Table of Elements." 2007
- Atomic Mass Data Center, NUBASE
- Elements in the Human Body and What They Do
- Vesborg & Jaramillo, Addressing the terawatt challenge: scalability in the supply of chemical elements for renewable energy. RSC Advances 2, 7933–7947 (2012).
- pTable: equation balancer, solution calculator and chemistry database, Python (10+ stars, ~30 properties)
- Periodic elements data, npm (100+ stars, ~20 properties)
- PeriodicTable.jl, Julia (20+ stars, ~20 properties with unitful physical quantities)
- Periodic-Table-JSON, simply a JSON file (100+ stars, ~20 properties)
- Extensible periodic table with x-ray and neutron scattering data, Python (60+ stars)
- PeriodicTable, R (~25 properties, CRAN package including dataset)1
- QCElemental, Python (50+ stars, exposes NIST CODATA, quantum chemistry data, and more)
- GTK-Periodic-Table-Molecular-Formula, C++ (<10 stars, ~20 properties)
- Periodica.Data, .NET (<10 stars, ~20 properties)
- Chemistry Utility, Python script with JSON/spreadsheets (<10 stars, ~70 properties)
- Comprehensive Periodic Table of the Elements Scrape, Python script with JSON/spreadsheets (<10 stars, ~700 properties)
- chemr, R package which uses Wikipedia's chemical elements data (<10 stars, ~10 properties)
- mendeleev package, Python (10+ stars, ~60 properties). Authored by Łukasz Mentel. Project supported by the Norwegian Research Council.
- List of chemical elements, Wikipedia (~10 properties)
- NIST Chemistry WebBook
- NIST Atomic Weights and Isotopic Compositions with Relative Atomic Masses
- Wolfram language
ElementData()
function (closed-source)
A list of every property in this dataset. If comment does not mention source then it was sourced from periodictable.com.
Property | Comment |
---|---|
Name | |
Symbol | |
Atomic_Number | Atomic_number (Wikipedia) |
Atomic_Weight | given for the longest lived isotope |
Density | |
Melting_Point | |
Boiling_Point | |
Phase | at NTP |
Absolute_Melting_Point | |
Absolute_Boiling_Point | |
Critical_Pressure | |
Critical_Temperature | |
Heat_of_Fusion | |
Heat_of_Vaporization | |
Specific_Heat | |
Adiabatic_Index | |
Neel_Point | Neel temperature (Wikipedia) |
Thermal_Conductivity | |
Thermal_Expansion | |
Density_Liquid | |
Molar_Volume | |
Brinell_Hardness | |
Mohs_Hardness | |
Vickers_Hardness | |
Bulk_Modulus | |
Shear_Modulus | |
Young_Modulus | |
Poisson_Ratio | |
Refractive_Index | |
Speed_of_Sound | |
Valence | |
Electronegativity | Electronegativity by Pauling scale |
ElectronAffinity | Wiki article, Wiki data page |
DOT_Hazard_Class | US DOT Hazard class (Wikipedia) |
DOT_Numbers | US DOT number |
RTECS_Number | Registry of Toxic Effects of Chemical Substances |
Alternate_Names | |
Block | s, p, d and so on |
Group | |
Period | |
Series | Series and IUPAC_Series should perhaps be remade and more rigorously sourced |
Electron_Configuration | |
Color | |
Gas_phase | Mono- or diatomic gas in its natural state |
CAS_Number | CAS registry number (Wikipedia) |
CID_Number | Compound identification number (PubChem?) |
Electrical_Type | |
Electrical_Conductivity | |
Resistivity | |
Superconducting_Point | |
Magnetic_Type | |
Curie_Point | Curie temperature (Wikipedia) |
Mass_Magnetic_Susceptibility | |
Molar_Magnetic_Susceptibility | |
Volume_Magnetic_Susceptibility | |
Percent_in_Universe | |
Percent_in_Sun | |
Percent_in_Meteorites | |
Percent_in_Earths_Crust | |
Percent_in_Oceans | |
Percent_in_Humans | |
Atomic_Radius | corresponds well to radii computed from theoretical models by Clementi et al. |
Covalent_Radius | not sure what source periodictable.com got this property from... Atomic radius (Wikipedia) |
Van_der_Waals_Radius | correspond to published vdW radii in literature |
Space_Group_Name | |
Space_Group_Number | |
HalfLife | |
Lifetime | |
Decay_Mode | |
Quantum_Numbers | |
Neutron_Cross_Section | |
Neutron_Mass_Absorption | |
Autoignition_Point | |
Flashpoint | |
Heat_of_Combustion | |
Gmelin_Number | |
Production | global primary production in 2010, kg/yr (Vesborg & Jaramillo, 2012) |
Price | price in 2010, USD/kg (Vesborg & Jaramillo, 2012) |
IUPAC_Period | period numbers re-defined to produce IUPAC-style table |
IUPAC_Group | group numbers re-defined to produce IUPAC-style table |
IUPAC_Number | atomic numbers as shown in IUPAC-style table |
IUPAC_Series |