Разработка сайтов в Доброполье, ДНР. Как импортировать данные и экспортировать результаты в R

 
 

С повальным увлечением «большими» данными инструменты аналитики приобрели популярность. Одним из таких инструментов является язык программирования R. В этом руководстве я покажу, как извлекать данные из текстовых файлов, файлов CSV и баз данных. Затем я покажу, как отправить эти данные на веб-сервер.

Вы можете задаться вопросом: нужно ли мне заново учить новый язык? Ответ — нет! Все, что вам нужно знать, это несколько команд.

Программисты с разным опытом, работающие над веб-приложениями на разных языках программирования, могут импортировать данные в R и после обработки экспортировать их в требуемом формате.

Примечание. Если вы не знакомы с R, я рекомендую статью SitePoint о том, как установить R и RStudio. Он предоставляет основные команды в R и общее введение в язык. В этом посте рассматриваются команды, которые можно запускать на терминале R без использования RStudio IDE. Однако обработка больших наборов данных на терминале может оказаться сложной для новичков, поэтому я бы предложил использовать RStudio для расширения возможностей. В RStudio вы можете запускать те же команды в окне консоли.

Работа с текстовыми файлами

Текстовый файл, присутствующий на вашем локальном компьютере, можно прочитать с помощью слегка измененной read.tableкоманды. Поскольку он предназначен для чтения таблиц, вы можете установить в качестве разделителя пустую строку («»), чтобы читать текстовый файл построчно:

file_contents = read.table («», sep = «»)

Примечание: там, где вы видите угловые скобки, например , вставьте нужный номер, идентификатор и т. д. без скобок.

Путь к файлу также может быть относительным путем к файлу. Если ваши строки имеют неравную длину, вы также должны установить fill = TRUE. Вывод этой команды — кадр данных в R.

Если ваш файл слишком велик для чтения за один раз, попробуйте прочитать его поэтапно, используя параметры skipи nrow. Например, чтобы прочитать строки 6–10 в вашем файле, выполните следующие команды:

connection ← file («»)

lines6_10 = read.table (connection, skip=5, nrow=5) # 6−10 lines

Обработка CSV-файлов

Файл CSV (значения, разделенные запятыми) — это файл, буквально содержащий значения, разделенные запятыми. Вы можете прочитать файл CSV с помощью read.csvкоманды:

file_contents = read.csv («»)

Параметр headerуказывает, содержит ли файл CSV заголовки столбцов. Он установлен TRUEпо умолчанию. (Это также можно указать при чтении текстовых файлов.) Если у вас есть неравные столбцы в разных строках, вам также необходимо установить fillзначение TRUE.

Для больших файлов вы можете пропускать строки аналогичным образом:

connection ← file («»)

lines6_10 = read.csv (connection, skip=5, nrow=5) # 6−10 lines

Использование баз данных MySQL

Для подключения к базе данных вам понадобится отдельная RMySQLбиблиотека. Его можно установить с помощью следующей команды:

install.packages ('RMySQL’)

После установки вам необходимо активировать его, выполнив следующее:

library ('RMySQL’)

Предполагая, что ваша база данных работает, теперь вы можете выполнять запросы MySQL после установления соединения:

con ← dbConnect (MySQL (),

user="root", password="root",

dbname="nsso", host="localhost", port=8889)

Если вы запускаете MySQL через MAMP на Mac, вам нужно указать unix.socket:

con ← dbConnect (..., unix.socket = «/Applications/MAMP/tmp/mysql/mysql.sock»)

Чтобы сделать запрос MySQL, вам сначала нужно выполнить запрос, а затем сохранить данные во фрейме данных:

rs ← dbSendQuery (con, «SELECT * FROM my_table;») # Make sure you run a LIMIT if your query is too large

data ← fetch (rs, n = -1)

Когда вы закончите со своими запросами, вы можете отключить соединение с помощью dbDisconnectкоманды:

dbDisconnect (con)

Чтение данных в Интернете

Что делать, если ваш источник данных находится в Интернете? Как вы читаете онлайн-файлы? В R это можно сделать, просто изменив путь к файлу, указанный вами в команде чтения. Вам нужно использовать urlкоманду и указать URL в read.csvкоманде. Например:

file_contents = read.csv (url («»))

Для базы данных hostможно изменить для извлечения данных из базы данных на веб-сервере.

Экспорт данных

Так же, как read.csvи read.table, фрейм данных можно экспортировать в текстовый или CSV-файл с помощью writeкоманд:

write.csv (data_frame, file = «data.csv»)

Чтобы экспортировать в виде текстового файла, используя другой разделитель (например, табуляцию), вы можете использовать write.tableкоманду:

write.table (data_frame, file = «data.txt», sep = «\t»)

Обновление баз данных так же просто и может быть выполнено с помощью команд UPDATEи INSERTMySQL.

Экспорт графиков

После того, как вы обработали и начертили свои данные в R, вы также можете экспортировать их! Команда pngor jpegсделает это за вас. По сути, он сохраняет активный в данный момент сюжет:

# Initiate Image

png (filename="sample.png")

# Make a plot

plot (c (1,2,3,4,5), c (4,5,6,7,8))

# Save the plot

dev.off ()

В идеале вы можете настроить вторую команду, чтобы сохранить нужный график.

Экспорт данных в Интернет

Прямая загрузка файлов в Интернет может быть немного сложной, но вы можете экспортировать данные в Интернет, выполнив два действия: сохраните файл локально, а затем загрузите его в Интернет. Вы можете загрузить файл в сеть с помощью POSTзапроса через R, который можно эмулировать с помощью httrпакета:

POST («», body = list (name="", filedata = upload_file (filename, «text/csv»)))

Для получения более подробной информации, вот краткое руководство на httrупаковке.

Вывод

R приобрел большую популярность в последние годы среди людей, работающих со статистикой, и сейчас самое время изучить этот замечательный язык. Он достаточно гибкий, чтобы синхронизироваться с различными типами источников данных, и работать с R также очень просто, независимо от вашего опыта. Будем надеяться, что этот пост помог вам начать работу с R!

3D-печать5GABC-анализAndroidAppleAppStoreAsusCall-центрChatGPTCRMDellDNSDrupalExcelFacebookFMCGGoogleHuaweiInstagramiPhoneLinkedInLinuxMagentoMicrosoftNvidiaOpenCartPlayStationPOS материалPPC-специалистRuTubeSamsungSEO-услугиSMMSnapchatSonyStarlinkTikTokTwitterUbuntuUp-saleViasatVPNWhatsAppWindowsWordPressXiaomiYouTubeZoomАвдеевкаАктивные продажиАкцияАлександровск ЛНРАлмазнаяАлчевскАмвросиевкаАнализ конкурентовАнализ продажАнтимерчандайзингАнтрацитАртемовскАртемовск ЛНРАссортиментная политикаБелгородБелицкоеБелозерскоеБердянскБизнес-идеи (стартапы)БрендБрянкаБукингВахрушевоВендорВидеоВикипедияВирусная рекламаВирусный маркетингВладивостокВнутренние продажиВнутренний маркетингВолгоградВолновахаВоронежГорловкаГорнякГорскоеДебальцевоДебиторкаДебиторская задолженностьДезинтермедитацияДзержинскДивизионная система управленияДизайнДимитровДирект-маркетингДисконтДистрибьюторДистрибьюцияДобропольеДокучаевскДоменДружковкаЕкатеринбургЕнакиевоЖдановкаЗапорожьеЗимогорьеЗолотоеЗоринскЗугрэсИжевскИловайскИрминоКазаньКалининградКировскКировскоеКомсомольскоеКонстантиновкаКонтент-маркетингКонтент-планКопирайтингКраматорскКрасноармейскКрасногоровкаКраснодарКраснодонКраснопартизанскКрасный ЛиманКрасный ЛучКременнаяКураховоКурскЛисичанскЛуганскЛутугиноМакеевкаМариупольМаркетингМаркетинговая информацияМаркетинговые исследованияМаркетинговый каналМаркетинг услугМаркетологМарьинкаМедиаМелекиноМелитопольМенеджментМерчандайзерМерчандайзингМиусинскМолодогвардейскМоскваМоспиноНижний НовгородНиколаевНиколаевкаНишевой маркетингНовоазовскНовогродовкаНоводружескНовосибирскНумерическая дистрибьюцияОдессаОмскОтдел маркетингаПартизанский маркетингПервомайскПеревальскПетровскоеПлата за кликПоисковая оптимизацияПопаснаяПравило ПаретоПривольеПрогнозирование продажПродвижение сайтов в ДонецкеПроизводство видеоПромоПромоушнПрямой маркетингРабота для маркетологаРабота для студентаРазработка приложенийРаспродажаРегиональные продажиРекламаРеклама на асфальтеРемаркетингРетро-бонусРибейтРитейлРовенькиРодинскоеРостов-на-ДонуРубежноеСамараСанкт-ПетербургСаратовСватовоСвердловскСветлодарскСвятогорскСевастопольСеверодонецкСеверскСедовоСейлз промоушнСелидовоСимферопольСинергияСколковоСлавянскСнежноеСоздание сайтов в ДонецкеСоледарСоциальные сетиСочиСтаробельскСтаробешевоСтахановСтимулирование сбытаСуходольскСчастьеТелемаркетингТельмановоТираспольТорговый представительТорезТрейд маркетингТрейд промоушнТюменьУглегорскУгледарУкраинскХабаровскХарцызскХерсонХостингЦелевая аудиторияЦифровой маркетингЧасов ЯрЧелябинскШахтерскЮжно-СахалинскЮнокоммунаровскЯндексЯсиноватая