R
- STID 1ère annéeCréer une fonction affichePays()
qui prend en paramètre un nom de pays et un continent, et qui l’affiche sur une ligne (de type pays (continent)
)
affichePays <- function(pays, continent) {
cat(pays, " (", continent, ")\n", sep = "")
}
affichePays("France", "Europe")
France (Europe)
Ajouter un paramètre à cette fonction, qui sera l’année d’indépendance (avec la valeur NA
par défaut)
NA
, alors on affichera pays (continent)
pays (continent - indépendance en XXXX)
affichePays <- function(pays, continent, annee = NA) {
cat(pays, " (", continent, sep = "")
if (!is.na(annee)) {
cat(" - independance en", annee)
}
cat(")\n")
}
affichePays("France", "Europe")
France (Europe)
affichePays("France", "Europe", 843)
France (Europe - independance en 843)
affichePays("France", "Europe", NA)
France (Europe)
Créer une fonction avec les caractéristiques suivantes :
ratio(10, c(1, 2, 3))
renverra .6
ratio <- function(pop.pays, pop.villes) {
r = sum(pop.villes) / pop.pays
return(r)
}
ratio(10, 1:3)
[1] 0.6
world
A partir des données présentes dans le fichier world-liste.RData
, répondre aux questions suivantes. Ces données concernent les pays dans le monde (à la fin du siècle dernier), et sont représentées sous forme de liste dans l’objet Country.liste
.
# chargement des données
load("donnees/World/world-liste.Rdata")
length(Country.liste)
[1] 239
Deux façons ici
Reduce(
function(a, b) {
a$Population = a$Population + b$Population
return(a)
},
Country.liste,
list(Population = 0)
)
$Population
[1] 6078749450
ou
sum(
sapply(
Country.liste,
function(p) { return(as.numeric(p$Population)) }
)
)
[1] 6078749450
Utiliser la fonction affichePays()
créée précédemment dans une fonction anonyme, pour afficher les informations des pays (un pays par ligne)
invisible(
lapply(
Country.liste,
function(p) {
affichePays(p$Name, p$Continent, p$IndepYear)
}
)
)
Aruba (North America)
Afghanistan (Asia - independance en 1919)
Angola (Africa - independance en 1975)
Anguilla (North America)
Albania (Europe - independance en 1912)
Andorra (Europe - independance en 1278)
Netherlands Antilles (North America)
United Arab Emirates (Asia - independance en 1971)
Argentina (South America - independance en 1816)
Armenia (Asia - independance en 1991)
American Samoa (Oceania)
Antarctica (Antarctica)
French Southern territories (Antarctica)
Antigua and Barbuda (North America - independance en 1981)
Australia (Oceania - independance en 1901)
Austria (Europe - independance en 1918)
Azerbaijan (Asia - independance en 1991)
Burundi (Africa - independance en 1962)
Belgium (Europe - independance en 1830)
Benin (Africa - independance en 1960)
Burkina Faso (Africa - independance en 1960)
Bangladesh (Asia - independance en 1971)
Bulgaria (Europe - independance en 1908)
Bahrain (Asia - independance en 1971)
Bahamas (North America - independance en 1973)
Bosnia and Herzegovina (Europe - independance en 1992)
Belarus (Europe - independance en 1991)
Belize (North America - independance en 1981)
Bermuda (North America)
Bolivia (South America - independance en 1825)
Brazil (South America - independance en 1822)
Barbados (North America - independance en 1966)
Brunei (Asia - independance en 1984)
Bhutan (Asia - independance en 1910)
Bouvet Island (Antarctica)
Botswana (Africa - independance en 1966)
Central African Republic (Africa - independance en 1960)
Canada (North America - independance en 1867)
Cocos (Keeling) Islands (Oceania)
Switzerland (Europe - independance en 1499)
Chile (South America - independance en 1810)
China (Asia - independance en -1523)
Côte d’Ivoire (Africa - independance en 1960)
Cameroon (Africa - independance en 1960)
Congo, The Democratic Republic of the (Africa - independance en 1960)
Congo (Africa - independance en 1960)
Cook Islands (Oceania)
Colombia (South America - independance en 1810)
Comoros (Africa - independance en 1975)
Cape Verde (Africa - independance en 1975)
Costa Rica (North America - independance en 1821)
Cuba (North America - independance en 1902)
Christmas Island (Oceania)
Cayman Islands (North America)
Cyprus (Asia - independance en 1960)
Czech Republic (Europe - independance en 1993)
Germany (Europe - independance en 1955)
Djibouti (Africa - independance en 1977)
Dominica (North America - independance en 1978)
Denmark (Europe - independance en 800)
Dominican Republic (North America - independance en 1844)
Algeria (Africa - independance en 1962)
Ecuador (South America - independance en 1822)
Egypt (Africa - independance en 1922)
Eritrea (Africa - independance en 1993)
Western Sahara (Africa)
Spain (Europe - independance en 1492)
Estonia (Europe - independance en 1991)
Ethiopia (Africa - independance en -1000)
Finland (Europe - independance en 1917)
Fiji Islands (Oceania - independance en 1970)
Falkland Islands (South America)
France (Europe - independance en 843)
Faroe Islands (Europe)
Micronesia, Federated States of (Oceania - independance en 1990)
Gabon (Africa - independance en 1960)
United Kingdom (Europe - independance en 1066)
Georgia (Asia - independance en 1991)
Ghana (Africa - independance en 1957)
Gibraltar (Europe)
Guinea (Africa - independance en 1958)
Guadeloupe (North America)
Gambia (Africa - independance en 1965)
Guinea-Bissau (Africa - independance en 1974)
Equatorial Guinea (Africa - independance en 1968)
Greece (Europe - independance en 1830)
Grenada (North America - independance en 1974)
Greenland (North America)
Guatemala (North America - independance en 1821)
French Guiana (South America)
Guam (Oceania)
Guyana (South America - independance en 1966)
Hong Kong (Asia)
Heard Island and McDonald Islands (Antarctica)
Honduras (North America - independance en 1838)
Croatia (Europe - independance en 1991)
Haiti (North America - independance en 1804)
Hungary (Europe - independance en 1918)
Indonesia (Asia - independance en 1945)
India (Asia - independance en 1947)
British Indian Ocean Territory (Africa)
Ireland (Europe - independance en 1921)
Iran (Asia - independance en 1906)
Iraq (Asia - independance en 1932)
Iceland (Europe - independance en 1944)
Israel (Asia - independance en 1948)
Italy (Europe - independance en 1861)
Jamaica (North America - independance en 1962)
Jordan (Asia - independance en 1946)
Japan (Asia - independance en -660)
Kazakstan (Asia - independance en 1991)
Kenya (Africa - independance en 1963)
Kyrgyzstan (Asia - independance en 1991)
Cambodia (Asia - independance en 1953)
Kiribati (Oceania - independance en 1979)
Saint Kitts and Nevis (North America - independance en 1983)
South Korea (Asia - independance en 1948)
Kuwait (Asia - independance en 1961)
Laos (Asia - independance en 1953)
Lebanon (Asia - independance en 1941)
Liberia (Africa - independance en 1847)
Libyan Arab Jamahiriya (Africa - independance en 1951)
Saint Lucia (North America - independance en 1979)
Liechtenstein (Europe - independance en 1806)
Sri Lanka (Asia - independance en 1948)
Lesotho (Africa - independance en 1966)
Lithuania (Europe - independance en 1991)
Luxembourg (Europe - independance en 1867)
Latvia (Europe - independance en 1991)
Macao (Asia)
Morocco (Africa - independance en 1956)
Monaco (Europe - independance en 1861)
Moldova (Europe - independance en 1991)
Madagascar (Africa - independance en 1960)
Maldives (Asia - independance en 1965)
Mexico (North America - independance en 1810)
Marshall Islands (Oceania - independance en 1990)
Macedonia (Europe - independance en 1991)
Mali (Africa - independance en 1960)
Malta (Europe - independance en 1964)
Myanmar (Asia - independance en 1948)
Mongolia (Asia - independance en 1921)
Northern Mariana Islands (Oceania)
Mozambique (Africa - independance en 1975)
Mauritania (Africa - independance en 1960)
Montserrat (North America)
Martinique (North America)
Mauritius (Africa - independance en 1968)
Malawi (Africa - independance en 1964)
Malaysia (Asia - independance en 1957)
Mayotte (Africa)
Namibia (Africa - independance en 1990)
New Caledonia (Oceania)
Niger (Africa - independance en 1960)
Norfolk Island (Oceania)
Nigeria (Africa - independance en 1960)
Nicaragua (North America - independance en 1838)
Niue (Oceania)
Netherlands (Europe - independance en 1581)
Norway (Europe - independance en 1905)
Nepal (Asia - independance en 1769)
Nauru (Oceania - independance en 1968)
New Zealand (Oceania - independance en 1907)
Oman (Asia - independance en 1951)
Pakistan (Asia - independance en 1947)
Panama (North America - independance en 1903)
Pitcairn (Oceania)
Peru (South America - independance en 1821)
Philippines (Asia - independance en 1946)
Palau (Oceania - independance en 1994)
Papua New Guinea (Oceania - independance en 1975)
Poland (Europe - independance en 1918)
Puerto Rico (North America)
North Korea (Asia - independance en 1948)
Portugal (Europe - independance en 1143)
Paraguay (South America - independance en 1811)
Palestine (Asia)
French Polynesia (Oceania)
Qatar (Asia - independance en 1971)
Réunion (Africa)
Romania (Europe - independance en 1878)
Russian Federation (Europe - independance en 1991)
Rwanda (Africa - independance en 1962)
Saudi Arabia (Asia - independance en 1932)
Sudan (Africa - independance en 1956)
Senegal (Africa - independance en 1960)
Singapore (Asia - independance en 1965)
South Georgia and the South Sandwich Islands (Antarctica)
Saint Helena (Africa)
Svalbard and Jan Mayen (Europe)
Solomon Islands (Oceania - independance en 1978)
Sierra Leone (Africa - independance en 1961)
El Salvador (North America - independance en 1841)
San Marino (Europe - independance en 885)
Somalia (Africa - independance en 1960)
Saint Pierre and Miquelon (North America)
Sao Tome and Principe (Africa - independance en 1975)
Suriname (South America - independance en 1975)
Slovakia (Europe - independance en 1993)
Slovenia (Europe - independance en 1991)
Sweden (Europe - independance en 836)
Swaziland (Africa - independance en 1968)
Seychelles (Africa - independance en 1976)
Syria (Asia - independance en 1941)
Turks and Caicos Islands (North America)
Chad (Africa - independance en 1960)
Togo (Africa - independance en 1960)
Thailand (Asia - independance en 1350)
Tajikistan (Asia - independance en 1991)
Tokelau (Oceania)
Turkmenistan (Asia - independance en 1991)
East Timor (Asia)
Tonga (Oceania - independance en 1970)
Trinidad and Tobago (North America - independance en 1962)
Tunisia (Africa - independance en 1956)
Turkey (Asia - independance en 1923)
Tuvalu (Oceania - independance en 1978)
Taiwan (Asia - independance en 1945)
Tanzania (Africa - independance en 1961)
Uganda (Africa - independance en 1962)
Ukraine (Europe - independance en 1991)
United States Minor Outlying Islands (Oceania)
Uruguay (South America - independance en 1828)
United States (North America - independance en 1776)
Uzbekistan (Asia - independance en 1991)
Holy See (Vatican City State) (Europe - independance en 1929)
Saint Vincent and the Grenadines (North America - independance en 1979)
Venezuela (South America - independance en 1811)
Virgin Islands, British (North America)
Virgin Islands, U.S. (North America)
Vietnam (Asia - independance en 1945)
Vanuatu (Oceania - independance en 1980)
Wallis and Futuna (Oceania)
Samoa (Oceania - independance en 1962)
Yemen (Asia - independance en 1918)
Yugoslavia (Europe - independance en 1918)
South Africa (Africa - independance en 1910)
Zambia (Africa - independance en 1964)
Zimbabwe (Africa - independance en 1980)
Utiliser la fonction de calcul de ratio de la population pour savoir pour chaque pays le ratio entre la population des villes de celui-ci et la population du pays
Idéalement, créer une nouvelle liste qui ajoute cette information aux autres, pour chaque pays
Country.liste2 = lapply(
Country.liste,
function(p) {
p$Ratio = ratio(p$Population, p$City$Population)
return(p)
}
)
Ici, on créé une nouvelle liste avec uniquement le nom et le ratio de chaque pays.
Country.ratio = lapply(
Country.liste,
function(p) {
res = list(
Name = p$Name,
Ratio = ratio(p$Population, p$City$Population)
)
return(res)
}
)
Identifier quels pays ont un ratio supérieur à 1
avec la nouvelle liste créée
Filter(
function(p) { return(p$Ratio > 1)},
Country.ratio
)
[[1]]
[[1]]$Name
[1] "Cocos (Keeling) Islands"
[[1]]$Ratio
[1] 1.116667
[[2]]
[[2]]$Name
[1] "Gibraltar"
[[2]]$Ratio
[1] 1.081
[[3]]
[[3]]$Name
[1] "Singapore"
[[3]]$Ratio
[1] 1.126362