Saravanan666/pypi-org huggingface dataset:
Package: easyplib
EasyPL - set of wrappers and tools based on PyTorch Lightning to quickly start learning Pytorch models.This library is a template project for faster deployment of machine learning model training projects based on PyTorch Lightning. If PyTorch Lightning makes learning models easy, then EasyPL makes it super easy.QuickstartYou can install this library using pip:pip install easyplibNote: Sorry for the mismatch between the library name in the pypi index and the documentation. The pypi project name normalization algorithms does not allow you to specify an easypl project name.If you want install lib for only one task, you can use:pip install easyplib[task]where task can be classification, detection, segmentation, gan or you can install all depencies with:pip install easyplib[all]Also you can install library manually:git clone https://github.com/tam2511/EasyPL.git
cd EasyPL
python setup.py installYou can find a description of all functions and API in thedocumentation.ExamplesYou can find all examples onrtdwith full training pipelines.For the library to work correctly, you need to wrap your optimizer and lr scheduler in the appropriate classes, for example:fromeasypl.optimizersimportWrapperOptimizerfromeasypl.lr_schedulersimportWrapperScheduleroptimizer=WrapperOptimizer(optim.Adam,lr=1e-4)lr_scheduler=WrapperScheduler(optim.lr_scheduler.StepLR,step_size=2,gamma=1e-1,interval='epoch')When using metrics from the torchmetrics library, you can use the TorchMetric wrapper:fromeasypl.metricsimportTorchMetricTorchMetric(F1(num_classes=2,average='none'),class_names=['cat','dog'])There are many callbacks available in the EasyPL library. For example, callbacks for image logging, cutmix and test-time augmentation are defined below.image_logger=ClassificationImageLogger(phase='train',max_samples=10,class_names=['cat','dog'],max_log_classes=2,dir_path='images',save_on_disk=True,)# Cutmix callbackcutmix=Cutmix(on_batch=True,p=1.0,domen='classification',)# Test time augmentation callbacktta=ClassificationImageTestTimeAugmentation(n=2,augmentations=[VerticalFlip(p=1.0)],phase='val')The final part of the training pipeline is the definition of the Learner class and the standard launch of training through the Trainer from the PyTorch Lightning library.learner=ClassificationLearner(model=model,loss=loss_f,optimizer=optimizer,lr_scheduler=lr_scheduler,train_metrics=train_metrics,val_metrics=val_metrics,data_keys=['image'],target_keys=['target'],multilabel=False)trainer=Trainer(gpus=1,callbacks=[image_logger,cutmix,tta],max_epochs=3,precision=16)trainer.fit(learner,train_dataloaders=train_dataloader,val_dataloaders=[val_dataloader])TODOLearner for image detection task.Learner for regression task.Example learner for GAN training.Callbacks for target/sample analytics.Finish writing detection part of callbacks.Add tests.
Package: easy-plot
Easy_PlotEasy_plot is a Python package built to provide easy and fast production-quality visualizations of statistical data.
Utilizes pandas dataframes as standard format for input data.Current Featureseasy_plot.distribution(df)Plot a "Distribution Plot": a swarmplot alongside a cumulative probability plot.Usage:importpandas
importeasy_plotdf=pandas.read_csv('test.csv')easy_plot.distribution(df,bin_col='Weight',result_col='Value')easy_plot.scatter(df)Plot a scatter plot.Usage:importpandas
importeasy_plotdf=pandas.read_csv('test.csv')easy_plot.scatter(df,xvar='Value',yvar='Value_2',sizevar='Weight')easy_plot.scatter_matrix(df)Plot a matrix of scatter plots.Usage:importpandas
importeasy_plotdf=pandas.read_csv('test.csv')easy_plot.scatter_matrix(df)easy_plot.heatmap(df)Plot a heatmap.Usage:importpandas
importeasy_plotdf=pandas.read_csv('test.csv')easy_plot.heatmap(df)LicenseMIT
Package: easy_plugins
===========Easy Plugins===========Module EasyPlugins provides easy way to manage plugins.I was searching for some easy yet powerful plugin framework, but nonothing suitable found. They are complicated, require implementationof some weird interface or they are ugly in other way. This is wayI have decided to reinvent the wheel and create this module (well,it's just one class and a few tests).What does it do? It scans your python path and try to load anything thatlooks like a python stuff with prefix you specify. That's all.Let's show you some example. Let's say I have a python application calledimage_resizer. Core functionality is in this package. Then I have someplugins that know something about image formats and each is using some veryclever algorithm. These plugins are called with prefix 'image_resizer_',so in regexp speech they match  '^image_resizer_.*'. For exampleimage_resizer_png, image_resizer_jpg and image_resizer_gif.In the described situation, one might use:extensions = {}plugins = EasyPlugins('image_resizer_')# plugins are now lazy initialized, next time you# call iteration, it will immediately return# an iterator of plugin modulesfor name, plugin in plugins:extension = plugin.extensionresizer_class = plugin.Resizerextensions[extension] = resizer_classSo in general usage is following:plugins = EasyPlugins('desired_prefix_')for name, plugin in plugins:# do whatever you need with the module# we have a duct typing, use it!expected_class = plugin.Classexpected_function = plugin.functioncustom_terminal_options = plugin.optionsActually you can provide multiple plugin names, for examplefor backward compatibility:plugins = EasyPlugins(['archiver_', 'archiver_plugin_'])If you would like to add plugins from directory that is not on the pathfor some reason, you could still use them by setting the additional path.This situation usually happens during development of the plugins.PYTHONPATH=/path/to/plugins /path/to/your/application.pyYou can find this project on the bitbucket:* https://bitbucket.org/prost87/easypluginsContinuous integration is provided by the drone.io:* https://drone.io/prost87/EasyPlugins
Package: easypool
easypool was created to make the creation of threadpools in Python very easy. It also supports the dynamic creation of threadpools by accepting common Python data structures, including but not limited: integers, floats, lists, dictionaries, tuples, strings and any other data structure that can be iterated. easypool can link each thread to the value of each item given to it (e.g. Inialize easypool with list [a, b, c] and thread 0 is linked to a, thread 1 is linked to b and thread 1 is linked to value c) the linked value can be sent as the first argument to the function that the thread is executing. Link threads to server addresses and create a function that remotely executes commands on the server address.
Package: easyport
This tool allows for connecting your Festo Didactic Easyport to your machine.from easyport import epconnector as EpUSB Connection:
You have to make sure you can read / write your USB device. Either give group permissions to your user or add user to dialout group.Ep.FtdiConnector(setup=True):
class for hardware connection to the Easyport. Only needed if usb connection is not possible.Ep.BasicEasyport(filepath=Savefile):
Basic class to send/receive from EasyPort.
Package: easypqp
EasyPQP: Simple library generation for OpenSWATHEasyPQP is a Python package that provides simplified and fast peptide query parameter generation for OpenSWATH. It can process input from MSFragger or other database search engines in pepXML format. Statistical validation can be conducted either using PyProphet or PeptideProphet/iProphet. Retention times are calibrated using an internal or external standard. In addition to a cumulative library, run-specific libraries are generated for non-linear RT alignment in OpenSWATH. For generation of PTM specific libraries that utilizes a unimod.xml database, you can further restrict the unimod.xml database file for modifications and site-specificities of interest.InstallationWe strongly advice to install EasyPQP in a Pythonvirtualenv. EasyPQP is compatible with Python 3.Install the development version ofeasypqpfrom GitHub:$ pip install git+https://github.com/grosenberger/easypqp.git@masterRunning EasyPQPEasyPQPis not only a Python package, but also a command line tool:$ easypqp --helpor:$ easypqp convert --help
   $ easypqp library --help
   $ easypqp reduce --help
   $ easypqp filter-unimod --helpDockerEasyPQP is also available from Docker (automated builds):Pull the development version ofeasypqpfrom DockerHub (synced with GitHub):$ docker pull grosenberger/easypqp:latest
Package: easypredict
easypredictgeneric predictive framework to evaluate predictive power of arbitrary feature to target mappingFree software: Apache Software License 2.0Documentation:https://easypredict.readthedocs.io.FeaturesTODOCreditsThis package was created withCookiecutterand theaudreyr/cookiecutter-pypackageproject template.History0.0.1 (2018-05-16)First release on PyPI.
Package: easy-predictor
Easy PredictorPerform Regression/Classifcation prediction on Excel dataset with ease.Github Linkhttps://github.com/Tho100/easy_predictorFeaturesPerform linear regression prediction by utilizinglinearfunctionPerform classification prediction by utilizingclassificationfunctionPerform statistical calculation by utilizingstatsfunctionVisualize excel dataset by utilizingtabulatorInstructionLinear Regression Predictionfromeasy_predictorimportlineardataset="path_to_excel_file"model=linear.linear_regression()model.predict(dataset,data_type:str,column_x:list[str],value:list[int],column_y:str)Text Classification Predictionfromeasy_predictorimportclassificationdataset="path_to_excel_file"model=classification.classification()model.predict(dataset,data_type:str,column_x:list[str],value:list[int],column_y:str)Visualize Datafromeasy_predictorimporttabledataset="path_to_excel_file"table.tabulator(dataset,dataset_type:'xlsx','csv',columns=list[str])Statistical CalculationAvailable Statistical FunctionMeanMedianModeHalfMeanfromeasy_predictorimportstatsdataset="path_to_excel"model=stats.statistical()model.mean(dataset,dtype:str,column=['Column1'])Medianfromeasy_predictorimportstatsdataset="path_to_excel"model=stats.statistical()model.median(dataset,dtype:str,column=['Column1'])Modefromeasy_predictorimportstatsdataset="path_to_excel"model=stats.statistical()model.mode(dataset,dtype:str,column=['Column1'])Halffromeasy_predictorimportstatsdataset="path_to_excel"model=stats.statistical()model.half(dataset,dtype:str,column=['Column1'])# Find half values of each rows from Column1Latest Update 0.1.0CSV (Comma Seperated Values) File supportedLatest Update 0.2.0New 'table' Function To Visualize Data In Tabular FormLatest Update 0.3.0ImportError: cannot import name 'table' from 'easy_predictor'. Bug
FixedLatest Update 0.4.0TypeError: object of type 'int' has no len(). Bug FixedLatest Update 0.5.0Bugs FixedLatest Update 0.6.1Multiple Column Input SupportedLatest Update 0.6.2Statistical FunctionLatest Update 0.6.3Bugs FixedLatest Update (0.6.6)User Now Can Assign A Variable To Predicted ValueBug FixedLatest Update (0.6.7)got multiple values for argument 'data_type'Bug fixedMore Clean Looking Output
Package: easypreprocessing
Data PreProcessingEasyPreProcessing is a Python module that comprises of data pre-processing helper functions mainly for the purpose of data science and machine learning.Many of the common machine learning activities that are performed during the Feature Engineering can be performed in a single line of code using this library.What functionalities are currently available?Handling missing valuesEncoding categorical variablesHandling DateTime featuresHandling empty/blank columnsDisplay correlation metricsStandardize datasetOver samplingClustering (KMeans)InstallingJust a simplepipinstalleasypreprocessingFor details regarding all the functionality available:fromeasypreprocessingimportEasyPreProcessingprep=EasyPreProcessing('filename.csv')prep.info()Sample TempleteBelow you can see a sample code of preprocessing using this library.fromeasypreprocessingimportEasyPreProcessingprep=EasyPreProcessing('filename_here.csv')prep.output='output_variable_here'prep.remove_blank()#Remove blank or empty columnsprep.missing_values#Display missing valuesprep.categorical.impute()#Fill missing values for categorical variablesprep.numerical.impute()#Fill missing values for numerical variablesprep.categorical.encode()#Convert categorical features to numericalprep.standardize()#Standardize datasetX_train,X_test,y_train,y_test=prep.split()
Package: easyprofile
easyprofile— Easy context-based profiling for PythonTheeasyprofilepackage provides facilities for setting Python'ssys.setprofile()locally within a context, together with a number of helpers
to automate profiling and logging.InstallationInstall as usual with pip:pip install easyprofileUsageReplacingsys.setprofile()locallyIf you wish to install a profile function that you would otherwise pass tosys.setprofile()within a local context, use theeasyprofile.profilecontext manager:>>>importeasyprofile>>>>>># profile function of the sys.setprofile() form>>>defmyfunc(frame,event,arg):...print('profile:',event)...>>># a test function to be profiled>>>defprofile_this(n):...# this inner function call will not show in the profile...returnsum(range(n))...>>># replace the profile function locally>>>witheasyprofile.profile(myfunc):...# only this call will be profiled...profile_this(100_000_000)...profile:callprofile:return4999999950000000Ignoring callsIf you wish to ignore some calls locally, you can use theeasyprofile.ignorecontext manager:>>>witheasyprofile.profile(myfunc):...# this call will be profiled...profile_this(100_000_000)......witheasyprofile.ignore:...# this call will be ignored...profile_this(100)...profile:callprofile:return49999999500000004950The context manager works by temporarily settingsys.setprofile()toNone,
and hence works with any profiler.Note thateasyprofile.ignoreis not a callable!Marking functions as ignoredFunctions can be marked as always ignored using the@easyprofile.ignoreddecorator:>>># this function is ignored by easyprofile>>>@easyprofile.ignored...defignored_func():...return42...>>>witheasyprofile.profile(myfunc):...ignored_func()...42Note that unlike theeasyprofile.ignorecontext manager, the decorator only
works witheasyprofile.Class-based profilersTo facilitate the creation of custom profilers, theeasyprofile.BaseProfileclass provides a method-based interface to handling events.  A method
with a name_<event>(i.e. underscore -- event name) is called whenever the
event<event>is encountered, with a signature offrame, arg.>>>classMyProfile(easyprofile.BaseProfile):...def__init__(self,arg,*,kwarg):...print(f'MyProfile: init,{arg=},{kwarg=}')......def_attach(self,frame,arg):...print('MyProfile: attached')......def_detach(self,frame,arg):...print('MyProfile: detached')......def_call(self,frame,arg):...print('MyProfile: function called')......def_return(self,frame,arg):...print('MyProfile: function returned')......# profile C extension calls using the same methods..._c_call=_call..._c_return=_return...The class-based profilers are easily invoked through theirprofile()class
method, which forwards its arguments to the constructor:>>># use the MyProfile class for local profiling>>>withMyProfile.profile('hello',kwarg='world'):...profile_this(100_000_000)...MyProfile:init,arg='hello',kwarg='world'MyProfile:functioncalledMyProfile:functionreturned4999999950000000
Package: easyprophet
easyprophet: Simplified Automatic Forecasting ProcedurePython package developed to simplifyProphetapplication to any data.It completely relies on theProphet packageand on its updates.InstallationThe package is normally released on pypy, you can find ithere, and install it easily on your environment by typing:pip install easyprophetNote: Prophet requires pystan, that has its owninstallation instructionson windows. It's recommended to use Conda Environment, and to perform the following step-by-step installation:Create and activate a conda environment:conda create -n prophet_env,activate stan_envinstall c++ compiler:conda install libpython m2w64-toolchain -c msys2install pystan dependencies through conda:conda install numpy cython matplotlib scipy pandas pystan -c conda-forgeinstall prophet:pip install prophetFor more details about the installation of prophet, please checkthe original documentation.Project Structure.
- notebooks              <- Jupyter/Colab Notebooks containing easyprophet examples
- src                    <- Source code for easy_prophet
    - easyprophet
        - __init__.py    <- To initialize easyprophet package
        - easyprophet.py <- Core easyprophet clasees & functions
        - hello_world.py <- module to test if the installation works
        - tools          <- Other helper scripts        
- tests                  <- Test suite
- .gitignore             <- Specifies intentionally untracked files to ignore
- AUTHORS.md             <- Credits
- CHANGELOG.md           <- Specify changes and features introduced in any release
- CODE_OF_CONDUCT.md     <- Code of conduct to which contributors must adhere
- LICENSE                <- License 
- README.md              <- This File! Contains info & links about the project
- requirements.txt       <- Python dependencies
- setup.py               <- Build script for setuptools (to make the pack pip installable)
- tox.ini                <- Contains info about the python tox test environment
Package: easypruner
Chinese [English](https://gitee.com/casia_iva_engineer/pruning-tools/blob/master/README_english.md)
## 概述
EasyPruner是一个轻量且实用的PyTorch神经网络剪枝工具包，提供了一系列即插即用的网络结构裁剪接口。任何不具备模型压缩知识背景的工程师都可通过在PyTorch工程代码中添加几行代码实现网络模型的精准瘦身，并导出用于多种平台部署的onnx模型。可使模型保持现有精度水平的情况下，成倍提升执行效率和存储效率。<br />​<br />
<a name=”EHucI”></a>
## 特点透明性：不需懂模型压缩知识即可流畅使用。<br />**灵活性**：无需更换训练框架，也不用为剪枝接口重构训练或评测代码，仅在原训练框架中进行几行代码增        加，即插即用。<br />**通用性**：支持所有工程场景中常用的网络结构，例如ResNet、VGGNet、Inception、MobileNet等；支持多种训练框架代码，open-mmlab系列开源框架、u版YOLO系列等。<br />**精确性**：吸取神经网络剪枝的最新研究成果，提供在公开评测集上处于SOTA水平的剪枝方法，可对网络冗余连接进行精确识别，在一些常规任务上可以实现无损压缩。<br />**实用性**：剪枝后的模型可直接导出onnx，实现在NPU、ARM、GPU、CPU等多种平台的通用部署<br /><a name=”BXs1U”></a>
## 创新
与其他开源模型剪枝工具项目相比，本项目做了如下创新，以使剪枝工具更加强大：提出基于ONNX的图分析的网络拓扑排序方法，可以实现前后依赖算子的自动化识别，以兼容多样化的训练框架。提出包含自研GradDecay稀疏剪枝方法的进阶剪枝模式，该方法针对YOLOv5目标检测算法设计，可以在不增加训练成本的情况下，最大限度保留网络原始表达能力，在一般情况下实现无损剪枝，在大剪枝率情况下依旧保持低精度损失。提出包含自研MaskL1稀疏剪枝方法的进阶剪枝模式，该方法比目前流行的Network Slimming 方法有优的剪枝精度。详细使用文档请参加语雀：中文版：https://www.yuque.com/books/share/d1639c26-4a93-4274-b028-3134ebcada17?# 《EasyPruner剪枝工具》英文版：https://www.yuque.com/docs/share/2abac59c-942d-413c-a379-e28fef97288f
Package: easy-publish
Easy PublishEasy publish is a Python library that provides a simple abstraction for publishing text files as blog posts.InstallationRequires: Python >= 3.6python3 -m pip install easy-publishUsageTo use easy publish import and call thegenerate_postsfunction pointing it to the directory your files are located in. Thegenerate_postsfunction returns an object that has two useful class variables:metadataandposts.metadatais a list of metadata about each of your posts(the "Including Markdown" section explains how to include metadata).postsis a list of post objects that include metadata and post content.Below is a simple flask app with jinja templating that utilizes easy publish and themetadata/postobjects. While this example uses flask/jinja, any web framework/templating engine should work with easy publish.app.pyfrom flask import Flask, render_template
from easy_publish import generate_posts

app = Flask(__name__)
posts = generate_posts("~/path/to/blogposts")

@app.route("/blog")
def blog():
  return render_template("blog.html", metadata=posts.metadata)

@app.route("/blog/<p>")
def blogpost(p):
  return render_template("post.html", post=posts.posts[p])blog.html{{% for post in metadata %}}
  <li>{{ post.title }}</li>
  <li>{{ post.date }}</li>
  <li>{{ post.tags }}</li>
  <li>{{ post.author }}</li>
{{% endfor %}}post.html<h1>{{ post.title }}</h1>
<h4>{{ post.date }}</h1>
<h4>{{ post.author }}</h1>
<p>{{ post.content }}</p>Including MetadataEasy publish expects text files to have a section at the top denoting metadata information. The section should be in the following format:~
title: title would go here
date: date would go here
tags: tags, would, go, here (comma separated)
author: author would go here
~The parser looks for information in between the ~'s and strips it out into the metadata. It's on the list of TODO's to add different ways to include metadata.ContributingCurrently in heavy development and not a stable interface. Feel free to contribute ideas as issues or as a pull request.LicenseMIT
Package: easypubsub
🗞️ EasyPubSubEasyPubSubis a simple wrapper aroundPyZMQthat provides an easy interface to thePubSub(Publish-Subscribe) functionality ofZeroMQ.In PubSub, apublisherpublishes a message to atopicand asubscribersubscribes to that topic and receives the message. In EasyPubSub, publishers and subscribers connect to each other via aproxy, which acts as intermediary between them.
For more information regardingPubSub, seeWikipedia.Get startedEasyPubSub can be installed viapip:pipinstalleasypubsubProxyNow let's start a proxy (code fromexamples/example_proxy.py):importtimefromeasypubsub.proxyimportProxyPUBLISHERS_ADDRESS="tcp://127.0.0.1:5555"SUBSCRIBERS_ADDRESS="tcp://127.0.0.1:5556"proxy=Proxy(PUBLISHERS_ADDRESS,SUBSCRIBERS_ADDRESS)proxy.launch()try:whileTrue:time.sleep(0.1)exceptKeyboardInterrupt:proxy.stop()This starts a proxy (stoppable withCTRL-C) that allows publishers to publish messages toPUBLISHERS_ADDRESSand subscribers to subscribe to topics onSUBSCRIBERS_ADDRESS. By using a proxy, publishers and subscribers can connect to each other without having to know each other's addresses.PublisherLet's create a publisher that every ten seconds announces one random number (code fromexamples/example_publisher.py):importrandomimporttimefromeasypubsub.publisherimportPublisherPUBLISHERS_ADDRESS="tcp://127.0.0.1:5555"PUBLISH_INTERVAL=10# seconds.publisher=Publisher("lottery",PUBLISHERS_ADDRESS,default_topic="winning_number")try:whileTrue:publisher.publish(message=random.randint(1,100))time.sleep(PUBLISH_INTERVAL)exceptKeyboardInterrupt:passSubscriberNow we can create a subscriber that prints the winning number every time it receives one (code fromexamples/example_subscriber.py):importtimefromeasypubsub.subscriberimportSubscriberSUBSCRIBERS_ADDRESS="tcp://127.0.0.1:5556"subscriber=Subscriber("lottery_player",SUBSCRIBERS_ADDRESS)try:whileTrue:result=subscriber.receive()iflen(result)>0:print("Received:")fortopic,messageinresult:print(f"{topic}:{message}")else:# No message received.time.sleep(1.0)exceptKeyboardInterrupt:passThere can be many publishers and subscribers connected to the same proxy, try starting a few of them with different names!For more detailed information, please visit thedocumentation.
Package: easy-py-server
easy_py_server
A flexible microframework providing reliable HTTP service for your projects.Easy to make HTTP services by pure python.Flexible to integrate with your existing codewithoutany configuration file or environ settings.Spring MCV like parameter injection implemented by python decorator:@post,@getetc.Easy to managestatic resources,`session`,cookies,path parameter,redirection,file uploadingetc.A single process multiple threads server framework that allows you share objects in your code.Easy to customize.easy-py-serveris written in pure python for easy debugging and customizing.For more information:https://github.com/scientificRat/easy_py_server.git
Package: easypysmb
This library wraps around the pysmb libraryfrom easypysmb import EasyPySMB

# Connect
e = EasyPySMB(
    'smbserver.example.com',
    domain='example.com',
    username='me',
    password='PassW0rd'
)

# List files
e.ls('share1/')

# Store files
e.store_file('/tmp/test.txt', 'share1/test.txt')

# Retrieve files
f = e.retrieve_file('share1/text.txt')

# Backup files
e.backup_file('share1/text.txt', 'share2/test.backup.txt')

# mkdir -p
e.mkdir('share1/dir1/dir2/dir3')

# Terminate connection
e.close()