Я использую spyder для анализа данных и только начал использовать рабочее пространство проекта. Я считаю, что это позволяет писать более качественный код за счет организации. В предыдущем посте говорилось, что «Это может быть полезно в веб-разработке», что верно, потому что веб-разработка требует хорошей разработки программного обеспечения из-за сложности файлов и того, как они взаимодействуют друг с другом. Эта организация/структура также может быть использована при анализе данных.
Часто аналитики данных, использующие Anaconda, имеют инженерное или научное образование, не обязательно в области разработки программного обеспечения или информатики. Это означает, что могут отсутствовать хорошие принципы разработки программного обеспечения (включая меня). Настройка рабочего пространства делает одну важную вещь, которая, как мне кажется, отсутствует в обсуждении. Он добавляет рабочее пространство к системному пути. Настройте проект, а затем попробуйте
import sys
print sys.path
Вы увидите, что каталог вашего проекта добавлен в PYTHONPATH. Это означает, что я могу разбить свой проект и импортировать функции из разных файлов в свой проект. Это очень полезно, когда анализ становится сложным или вы хотите создать более крупную модель, которая будет использоваться на регулярной основе. Я могу создать все свои функции в одном файле, возможно, функции для графиков в другом, а затем импортировать их в отдельный файл сценария.
в myScript.py
from myFunctions import func1
from myFunctions import func2
from myPlots import histPlot
Это гораздо более чистый подход к анализу данных, который позволяет вам сосредоточиться на одной конкретной задаче за раз.
В python 3 есть возможность %autoreload, так что вы можете работать на свои функции, а затем вернитесь к файлу сценария, и он будет перезагружать их каждый раз, если вы обнаружите ошибки. Я еще не пробовал это, потому что большая часть моей работы находится в версии 2.7, но, похоже, это добавляет еще большей гибкости при разработке.
Итак, когда вы должны это сделать? Я думаю, что это всегда хорошая идея, я только начал использовать эту настройку, и я никогда не вернусь!
person
Jeff Tilton
schedule
27.04.2017