PHPackages                             olcaytaner/sampling - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. olcaytaner/sampling

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

olcaytaner/sampling
===================

Sampling Library

1.0.0(1y ago)061GPL-3.0-or-laterPHP

Since Dec 28Pushed 3w agoCompare

[ Source](https://github.com/StarlangSoftware/Sampling-Php)[ Packagist](https://packagist.org/packages/olcaytaner/sampling)[ RSS](/packages/olcaytaner-sampling/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (1)

Sampling Strategies
===================

[](#sampling-strategies)

K-Fold cross-validation
-----------------------

[](#k-fold-cross-validation)

In K-fold cross-validation, the aim is to generate K training/validation set pair, where training and validation sets on fold i do no overlap. First, we divide the dataset X into K parts as X1; X2; ... ; XK. Then for each fold i, we use Xi as the validation set and the remaining as the training set.

Possible values of K are 10 or 30. One extreme case of K-fold cross-validation is leave-one-out, where K = N and each validation set has only one instance. If we have more computation power, we can have multiple runs of K-fold cross-validation, such as 10 x 10 cross-validation or 5 x 2 cross-validation.

Bootstrapping
-------------

[](#bootstrapping)

If we have very small datasets, we do not insist on the non-overlap of training and validation sets. In bootstrapping, we generate K multiple training sets, where each training set contains N examples (like the original dataset). To get N examples, we draw examples with replacement. For the validation set, we use the original dataset. The drawback of bootstrapping is that the bootstrap samples overlap more than the cross-validation sample, hence they are more dependent.

Video Lectures
==============

[](#video-lectures)

[![](https://github.com/StarlangSoftware/Sampling/raw/master/video.jpg)](https://youtu.be/wijWOiv70nE)

For Developers
==============

[](#for-developers)

You can also see [Java](https://github.com/starlangsoftware/Sampling), [Python](https://github.com/starlangsoftware/Sampling-Py), [Cython](https://github.com/starlangsoftware/Sampling-Cy), [Js](https://github.com/starlangsoftware/Sampling-Js), [C#](https://github.com/starlangsoftware/Sampling-CS), [Swift](https://github.com/starlangsoftware/Sampling-Swift), or [C++](https://github.com/starlangsoftware/Sampling-CPP) repository.

Requirements
------------

[](#requirements)

- [Php 8.4 or higher](#php)
- [Git](#git)

### Php

[](#php)

To check if you have a compatible version of Php installed, use the following command:

```
php -V

```

You can find the latest version of Php [here](https://www.php.net/downloads/).

### Git

[](#git)

Install the [latest version of Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git).

Download Code
-------------

[](#download-code)

In order to work on code, create a fork from GitHub page. Use Git for cloning the code to your local or below line for Ubuntu:

```
git clone

```

A directory called Sampling will be created. Or you can use below link for exploring the code:

```
git clone https://github.com/starlangsoftware/Sampling-Php.git

```

Open project with PhpStorm IDE
------------------------------

[](#open-project-with-phpstorm-ide)

Steps for opening the cloned project:

- Start IDE
- Select **File | Open** from main menu
- Choose `Sampling-Php` file
- Select open as project option
- Couple of seconds, dependencies will be downloaded.

For Contibutors
===============

[](#for-contibutors)

### composer.json file

[](#composerjson-file)

1. autoload is important when this package will be imported.

```
  "autoload": {
    "psr-4": {
      "olcaytaner\\WordNet\\": "src/"
    }
  },

```

2. Dependencies should be maximum (not only direct but also indirect references should also be given), everything directly in the code should be given here.

```
  "require-dev": {
    "phpunit/phpunit": "11.4.0",
    "olcaytaner/dictionary": "1.0.0",
    "olcaytaner/xmlparser": "1.0.1",
    "olcaytaner/morphologicalanalysis": "1.0.0"
  }

```

### Data files

[](#data-files)

1. Add data files to the project folder. Subprojects should include all data files of the parent projects.

### Php files

[](#php-files)

1. Do not forget to comment each function.

```
    /**
     * Returns true if specified semantic relation type presents in the relations list.
     *
     * @param SemanticRelationType $relationType element whose presence in the list is to be tested
     * @return bool true if specified semantic relation type presents in the relations list
     */
    public function containsRelationType(SemanticRelationType $relationType): bool{
        foreach ($this->relations as $relation){
            if ($relation instanceof SematicRelation && $relation->getRelationType() == $relationType){
                return true;
            }
        }
        return false;
    }

```

2. Function names should follow caml case.

```
    public function getRelation(int $index): Relation{

```

3. Write getter and setter methods.

```
    public function getOrigin(): ?string
    public function setName(string $name): void

```

4. Use standard javascript test style by extending the TestCase class. Use setup when necessary.

```
class WordNetTest extends TestCase
{
    private WordNet $turkish;

    protected function setUp(): void
    {
        ini_set('memory_limit', '450M');
        $this->turkish = new WordNet();
    }

    public function testSize()
    {
        $this->assertEquals(78327, $this->turkish->size());
    }

```

5. Enumerated types should be declared with enum.

```
enum CategoryType
{
    case MATHEMATICS;
    case SPORT;
    case MUSIC;
    case SLANG;
    case BOTANIC;

```

6. If there are multiple constructors for a class, define them as constructor1, constructor2, ..., then from the original constructor call these methods.

```
    public function constructor1(string $path, string $fileName): void
    public function constructor2(string $path, string $extension, int $index): void
    public function __construct(string $path, string $extension, ?int $index = null)

```

7. Use \_\_toString method if necessary to create strings from objects.

```
    public function __toString(): string

```

8. Use xmlparser package for parsing xml files.

```
  $doc = new XmlDocument("../test.xml");
  $doc->parse();
  $root = $doc->getFirstChild();
  $firstChild = $root->getFirstChild();

```

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance70

Regular maintenance activity

Popularity4

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

543d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/8903e2f2ee6f2b7849f720cf76786a074796f23ac27e12bde3036de5ca12de3f?d=identicon)[olcaytaner](/maintainers/olcaytaner)

---

Top Contributors

[![olcaytaner](https://avatars.githubusercontent.com/u/39756553?v=4)](https://github.com/olcaytaner "olcaytaner (3 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/olcaytaner-sampling/health.svg)

```
[![Health](https://phpackages.com/badges/olcaytaner-sampling/health.svg)](https://phpackages.com/packages/olcaytaner-sampling)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
