… Во что мне трудно поверить. Вот 10 способов сделать Python опасным инструментом для науки о данных.

Python имеет множество приложений - веб-разработка, графические интерфейсы для настольных ПК, разработка программного обеспечения, бизнес-приложения и научные / числовые вычисления. В этой серии статей мы сосредоточимся на том, как использовать числовые вычисления в Python для науки о данных и машинного обучения.

Это не исчерпывающий учебник по Python, он вместо этого предназначен для выделения наиболее важных для нас частей языка (некоторые из которых часто не рассматриваются в учебных пособиях по Python).

В этом руководстве мы рассмотрим следующие основные функции Python:

  1. Функция Python

2. Типы и последовательности данных

3. Дата и время

4. Лямбда

5. Карта

6. Фильтр

7. Уменьшить

8. Почтовый индекс.

9. Для цикла

10. Понимание списка

1. Функция Python

Функция - это блок кода, который запускается только при вызове. Вы можете передавать данные, известные как параметры, в функцию. Напишем функцию умножения двух чисел.

#multiply two numbers using a python function
def multiply(x,y):
    z = x*y
    return z
#call the function to multiply the numbers 2 and 3
multiply(4,3)

Вывод: 12

2. Типы и последовательности данных Python

Python имеет встроенные типы данных для хранения числовых и символьных данных. Давайте посмотрим на несколько распространенных типов.

type(' My name is Shimanto')

Вывод: str

type(5)

Вывод: int

type(5.0)

Вывод: с плавающей точкой

type(None) #None signifies 'no value' or 'empty value'

Вывод: NoneType

type(multiply) #multiply is a function we created previously

Вывод: функция

Теперь давайте посмотрим, как мы можем сохранить список чисел и символов и как выполнить несколько основных манипуляций.

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

a = (1,2,3,4)
type(a)

Вывод: кортеж

II. Списки: это изменяемые объекты

b = [1,2,3,4]
type(b)

Вывод: список

Давайте добавим число в список b, созданный выше.

b.append(2.5) #append to list using this function
print(b)

Вывод: [1, 2, 3, 4, 2,5]

Прокрутите список и распечатайте числа

for number in b: #looping through list
    print(number)

Вывод:

1
2
3
4
2.5

Теперь давайте объединим два списка

[1,2,3] + [5,'bc','de'] #concatenate lists

Вывод: [1, 2, 3, 5, ‘bc’, ‘de’]

Составьте список с повторяющимися числами.

[1,2]*3 #repeat lists

Вывод: [1, 2, 1, 2, 1, 2]

Проверьте, есть ли объект, который вы ищете, в списке.

3 in b #in operator to check if required object is in list

Вывод: верно

Распаковать список на отдельные переменные.

a,b = ('bc','def')
print(a)
print(b)

Вывод: bc
def

iii. Строки: строка хранит символьные объекты

x = 'My name is Shimanto'

Доступ к символам из строки:

x[0] #Access first letter

Вывод: «M»

x[0:2] #Accesses two letters

Вывод: «Мой»

x[:-1] #Accesses everything except last letter

Вывод: «Мое имя сияет»

x[10:] #returns all the characters from 10th position till end

Вывод: «Шиманто»

Теперь давайте объединим две строки.

first = 'Harun'
last = 'Shimanto'
Name = first + ' ' + last #string concatenation
print(Name)

Вывод: Харун Шиманто

Показывать только первое слово.

Name.split(' ')[0] #Show the first word

Вывод: «Харун»

Теперь покажите только второе слово в строке

Name.split(' ')[1] #Show the second word

Вывод: «Симанто»

Чтобы объединить числовые данные в строку, сначала преобразуйте число в строку

#for concatenation convert objects to strings
'Harun' + str(2)

Вывод: Harun2

iv. Словарь: словарь - это коллекция, которая не упорядочена, но проиндексирована, и у них есть ключи и значения.

c = {"Name" : "Harun", "Height" : 175}
type(c)

Вывод: dict

Распечатать данные, содержащиеся в словаре

print(c)

Вывод: {‘Name’: ‘Harun’, ‘Height’: 175}

Доступ к значениям словаря на основе ключей

c['Name'] #Access Name

Вывод: «Харун»

c['Height']

Вывод: 175

Распечатать все ключи в словаре

#print all the keys
for i in c:
    print(i)

Вывод: имя
Высота

Распечатать все значения в словаре

for i in c.values():
    print(i)

Вывод: Харун
175

Перебирать все элементы в словаре

for name, height in c.items():
    print(name)
    print(height)

Вывод: Имя
Харун
Рост
175

3. Дата и время Python

Следующие модули помогают нам управлять переменными даты и времени простыми способами.

import datetime as dt
import time as tm

Вывести текущее время в секундах (с 1 января 1970 г.)

tm.time() #print current time in seconds from January 1, 1970

Вывод: 1533370235.0210752

#convert timestamp to datetime
dtnow = dt.datetime.fromtimestamp(tm.time()) 
dtnow.year

Выход: 2018 г.

Получите сегодняшнее свидание

today = dt.date.today()
today

Вывод: datetime.date (2018, 8, 4)

Вычтите 100 дней из сегодняшней даты

delta = dt.timedelta(days=100)
today - delta

Вывод: datetime.date (2018, 4, 26)

4. Функция карты

Функция карты возвращает список результатов после применения данной функции к каждому элементу данной последовательности. Например, давайте найдем минимальное значение между двумя парами списков.

a = [1,2,3,5]
b = [8,9,10,11]
c = map(min,a,b) #Find the minimum between two pairs of lists
for item in c:
    print(item) #print the minimum of the pairs

Вывод: 1
2
3
5

5. Лямбда-функция

Лямбда-функция используется для создания небольших одноразовых и анонимных функциональных объектов в Python.

function = lambda a,b,c : a+b+c #function to add three numbers
function(5,6,8) #call the function

Вывод: 19

6. Функция фильтра

Фильтр предлагает простой способ отфильтровать все элементы списка. Фильтру (синтаксис: фильтр (функция, список)) в качестве первого аргумента требуется функция, для которой можно использовать лямбда. В качестве примера давайте отфильтруем из списка только числа больше 5.

x = [0,2,3,4,5,7,8,9,10] #create a list
x2 = filter(lambda a : a>5, x) #filter using filter function
print(list(x2))

Вывод: [7,8,9,10]

7. Функция уменьшения

Reduce - это функция для выполнения некоторых вычислений в списке и возврата результата. Он применяет скользящее вычисление к последовательным парам значений в списке. В качестве примера давайте вычислим произведение всех чисел в списке.

from functools import reduce #import reduce function
y = [6,7,8,9,10] #create list
reduce(lambda a,b : a*b,y) #use reduce

Вывод: 30240

8. Функция почтового индекса.

Функция Zip возвращает список кортежей, где i -й кортеж содержит i -й элемент из каждой из последовательностей. Давайте посмотрим на пример.

a = [1,2,3,4] #create two lists
b = [5,6,7,8]
c = zip(a,b) #Use the zip function
print(list(c))

Вывод: [(1,5), (2,6), (3,7), (4,8)]

Если последовательности, используемые в функции zip, не равны, возвращаемый список обрезается по длине до длины самой короткой последовательности.

a = [1,2] #create two lists
b = [5,6,7,8]
c = zip(a,b) #Use the zip function
print(c)

Вывод: [(1,5), (2,6)]

9. Для цикла

Циклы For обычно используются, когда у вас есть блок кода, который вы хотите повторить фиксированное количество раз.

Давайте воспользуемся циклом for для вывода списка четных чисел от 1 до 50.

#return even numbers from 1 to 50
even=[]
for i in range(50):
    if i%2 ==0:
        even.append(i)
    else:
        None
print(even) #print the list

Вывод: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36 , 38, 40, 42, 44, 46, 48]

10. Понимание списка

Понимание списков обеспечивает более простой способ создания списков. Продолжая тот же пример, давайте создадим список четных чисел от 1 до 50, используя понимание списка.

even = [i for i in range(50) if i%2==0]
print(even)

Вывод: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36 , 38, 40, 42, 44, 46, 48]

Рассмотренные нами функции помогают понять основные функции Python, которые используются для численных вычислений. Помимо этих встроенных функций, существуют и другие библиотеки, такие как Numpy и Pandas (которые мы рассмотрим в следующих статьях), которые широко используются в науке о данных и машинах. обучение.

Ресурсы :

  1. Документация Python 3.7.0
  2. Прикладная наука о данных со специализацией на Python.

Подключитесь к LinkedIn и загляните на Github (ниже), чтобы получить полную записную книжку.



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

Спасибо всем.