Семинар 1: ввод и вывод, векторы

Часть 1: ввод и вывод

Задача 1

Напишите код, который запрашивает у пользователя его имя с клавиатуры и выводит на экран сообщение вида “Hello, name!”.

Задача 2

Напишите код, который запрашивает у пользователя два дробных числа (одно число — один запрос) и выводит на экран их сумму. Решите эту задачу в предположении, что:

  • пользователь вводит дробные числа с десятичным разделителем в виде точки;
  • пользователь вводит дробные числа с десятичным разделителем в виде запятой.

Задача 3

Напишите код, который запрашивает у пользователя значение скорости в километрах в час и выводит на экран значение скорости в метрах в секунду.

Часть 2: векторы

Задача 1

Дан вектор g, в котором хранятся следующие значения:

1, 0, 2, 3, 6, 8, 12, 15, 0, NA, NA, 9, 4, 16, 2, 0

Создайте вектор g. Используя R, выведите на экран:

  • первый элемент вектора;
  • последний элемент вектора;
  • элементы вектора с третьего по пятый включительно;
  • элементы вектора, которые равны 2;
  • элементы вектора, которые больше 4;
  • элементы вектора, которые кратны 3 (делятся на 3 без остатка);
  • элементы вектора, которые больше 4 и кратны 3;
  • элементы вектора, которые или меньше 1, или больше 5;
  • индексы элементов, которые равны 0;
  • индексы элементов, которые не меньше 2 и не больше 8.

Задача 2

Напишите код, который заменяет последний элемент любого вектора на пропущенное значение (NA). Ваш код должен работать для вектора любой длины.

Задача 3

Напишите код, который выводит на экран индексы пропущенных значений в векторе.

Задача 4

Напишите код, который считает, сколько пропущенных значений в векторе.

Задача 5

Напишите код, который позволяет создать вектор из id (уникальных номеров) респондентов, если известно, что в опросе участвовало 100 респондентов.

Задача 6

Решение задачи предполагает рациональное решение с помощью функций R, не нужно создавать вектора перечислением большого числа элементов вручную.

Известно, что в таблице хранятся показатели по 3 странам за 5 лет (см. ниже).

Создайте вектор который мог бы послужить столбцом country в этой таблице. Создайте вектор, который мог бы послужить столбцом year в этой таблице.

Таблица выглядит так:

country year
1 France 2000
2 France 2001
3 France 2002
4 France 2003
5 France 2004
6 Italy 2000
7 Italy 2001
8 Italy 2002
9 Italy 2003
10 Italy 2004
11 Spain 2000
12 Spain 2001
13 Spain 2002
14 Spain 2003
15 Spain 2004

Задача 7

Исследователь решил создать вектор income, в котором сохранены доходы нескольких респондентов:

income <- c(10000, 32000, 28000, 150000, 65000, 1573)

Исследователю нужно получить вектор income_class, состоящий из 0 и 1: 0 ставится, если доход респондента ниже среднего дохода, а 1 — если больше или равен среднему доходу. Создайте вектор income_class.

Подсказка: сначала можно посчитать среднее значение по вектору income и сохранить его в какую-нибудь переменную. Пользоваться встроенной функцией mean() нельзя.