xkfuzzy


Namexkfuzzy JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/xkfuzzy/xkfuzzy
SummaryA Python library for fuzzy membership calculations
upload_time2025-10-20 02:44:04
maintainerNone
docs_urlNone
authorxkfuzzy
requires_python>=3.7
licenseMIT
keywords fuzzy membership logic mathematics ai
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # xkfuzzy

A simple Python library for fuzzy membership calculations.

## Installation

```bash
pip install -e .
```

## Usage

The library provides a single function `calculate_membership` that can compute fuzzy membership values using different membership functions.

### Basic Usage

```python
import xkfuzzy

# Triangular membership function
membership_value = xkfuzzy.calculate_membership(
    value=5, 
    membership_type="triangular", 
    a=0, b=5, c=10
)
print(membership_value)  # Output: 1.0
```

### Supported Membership Functions

#### 1. Triangular Membership
```python
# Parameters: a, b, c (where a < b < c)
membership = xkfuzzy.calculate_membership(
    value=3, 
    membership_type="triangular", 
    a=0, b=5, c=10
)
```

#### 2. Trapezoidal Membership
```python
# Parameters: a, b, c, d (where a < b < c < d)
membership = xkfuzzy.calculate_membership(
    value=3, 
    membership_type="trapezoidal", 
    a=0, b=2, c=8, d=10
)
```

#### 3. Gaussian Membership
```python
# Parameters: center, sigma
membership = xkfuzzy.calculate_membership(
    value=2, 
    membership_type="gaussian", 
    center=0, sigma=1
)
```

#### 4. Bell-shaped Membership
```python
# Parameters: a (width), b (slope), c (center)
membership = xkfuzzy.calculate_membership(
    value=1, 
    membership_type="bell", 
    a=1, b=2, c=0
)
```

### Working with Arrays

The function also supports numpy arrays:

```python
import numpy as np
import xkfuzzy

values = np.array([0, 2, 5, 8, 10])
memberships = xkfuzzy.calculate_membership(
    value=values, 
    membership_type="triangular", 
    a=0, b=5, c=10
)
print(memberships)  # Output: [0.0, 0.4, 1.0, 0.4, 0.0]
```

## Function Signature

```python
calculate_membership(value, membership_type="triangular", **params)
```

**Parameters:**
- `value`: Input value(s) for which to calculate membership (float or array-like)
- `membership_type`: Type of membership function ("triangular", "trapezoidal", "gaussian", "bell")
- `**params`: Parameters specific to the membership function type

**Returns:**
- Membership value(s) between 0 and 1

## Requirements

- Python 3.7+
- NumPy 1.19.0+

## License

MIT License

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/xkfuzzy/xkfuzzy",
    "name": "xkfuzzy",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "fuzzy, membership, logic, mathematics, ai",
    "author": "xkfuzzy",
    "author_email": "muhfajarags <muhfajarags@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/e3/df/d71e3d5ebb511c4c4b7b49585f43915eefb405a2781bbd10f7137316a36c/xkfuzzy-0.1.0.tar.gz",
    "platform": null,
    "description": "# xkfuzzy\r\n\r\nA simple Python library for fuzzy membership calculations.\r\n\r\n## Installation\r\n\r\n```bash\r\npip install -e .\r\n```\r\n\r\n## Usage\r\n\r\nThe library provides a single function `calculate_membership` that can compute fuzzy membership values using different membership functions.\r\n\r\n### Basic Usage\r\n\r\n```python\r\nimport xkfuzzy\r\n\r\n# Triangular membership function\r\nmembership_value = xkfuzzy.calculate_membership(\r\n    value=5, \r\n    membership_type=\"triangular\", \r\n    a=0, b=5, c=10\r\n)\r\nprint(membership_value)  # Output: 1.0\r\n```\r\n\r\n### Supported Membership Functions\r\n\r\n#### 1. Triangular Membership\r\n```python\r\n# Parameters: a, b, c (where a < b < c)\r\nmembership = xkfuzzy.calculate_membership(\r\n    value=3, \r\n    membership_type=\"triangular\", \r\n    a=0, b=5, c=10\r\n)\r\n```\r\n\r\n#### 2. Trapezoidal Membership\r\n```python\r\n# Parameters: a, b, c, d (where a < b < c < d)\r\nmembership = xkfuzzy.calculate_membership(\r\n    value=3, \r\n    membership_type=\"trapezoidal\", \r\n    a=0, b=2, c=8, d=10\r\n)\r\n```\r\n\r\n#### 3. Gaussian Membership\r\n```python\r\n# Parameters: center, sigma\r\nmembership = xkfuzzy.calculate_membership(\r\n    value=2, \r\n    membership_type=\"gaussian\", \r\n    center=0, sigma=1\r\n)\r\n```\r\n\r\n#### 4. Bell-shaped Membership\r\n```python\r\n# Parameters: a (width), b (slope), c (center)\r\nmembership = xkfuzzy.calculate_membership(\r\n    value=1, \r\n    membership_type=\"bell\", \r\n    a=1, b=2, c=0\r\n)\r\n```\r\n\r\n### Working with Arrays\r\n\r\nThe function also supports numpy arrays:\r\n\r\n```python\r\nimport numpy as np\r\nimport xkfuzzy\r\n\r\nvalues = np.array([0, 2, 5, 8, 10])\r\nmemberships = xkfuzzy.calculate_membership(\r\n    value=values, \r\n    membership_type=\"triangular\", \r\n    a=0, b=5, c=10\r\n)\r\nprint(memberships)  # Output: [0.0, 0.4, 1.0, 0.4, 0.0]\r\n```\r\n\r\n## Function Signature\r\n\r\n```python\r\ncalculate_membership(value, membership_type=\"triangular\", **params)\r\n```\r\n\r\n**Parameters:**\r\n- `value`: Input value(s) for which to calculate membership (float or array-like)\r\n- `membership_type`: Type of membership function (\"triangular\", \"trapezoidal\", \"gaussian\", \"bell\")\r\n- `**params`: Parameters specific to the membership function type\r\n\r\n**Returns:**\r\n- Membership value(s) between 0 and 1\r\n\r\n## Requirements\r\n\r\n- Python 3.7+\r\n- NumPy 1.19.0+\r\n\r\n## License\r\n\r\nMIT License\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python library for fuzzy membership calculations",
    "version": "0.1.0",
    "project_urls": {
        "Homepage": "https://github.com/xkfuzzy/xkfuzzy",
        "Issues": "https://github.com/xkfuzzy/xkfuzzy/issues",
        "Repository": "https://github.com/xkfuzzy/xkfuzzy"
    },
    "split_keywords": [
        "fuzzy",
        " membership",
        " logic",
        " mathematics",
        " ai"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ab2880a7eaa4b1de0b13190c808322e1e5b39835db083f7956f20fa84cbf1fb4",
                "md5": "27cb1e64edec63ade7bad81a5a9ca84e",
                "sha256": "380bf708030cd580835c22b7c8de05443ece4f9798291abf4d3fe9e4373baf5b"
            },
            "downloads": -1,
            "filename": "xkfuzzy-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "27cb1e64edec63ade7bad81a5a9ca84e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 4436,
            "upload_time": "2025-10-20T02:44:02",
            "upload_time_iso_8601": "2025-10-20T02:44:02.940274Z",
            "url": "https://files.pythonhosted.org/packages/ab/28/80a7eaa4b1de0b13190c808322e1e5b39835db083f7956f20fa84cbf1fb4/xkfuzzy-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e3dfd71e3d5ebb511c4c4b7b49585f43915eefb405a2781bbd10f7137316a36c",
                "md5": "f719e3c08f5f9aed966e2ce955ffcc89",
                "sha256": "e673fe6233d60e7044782be728a91270011bb8856c70bf2dda81387766640900"
            },
            "downloads": -1,
            "filename": "xkfuzzy-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "f719e3c08f5f9aed966e2ce955ffcc89",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 5018,
            "upload_time": "2025-10-20T02:44:04",
            "upload_time_iso_8601": "2025-10-20T02:44:04.142725Z",
            "url": "https://files.pythonhosted.org/packages/e3/df/d71e3d5ebb511c4c4b7b49585f43915eefb405a2781bbd10f7137316a36c/xkfuzzy-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-20 02:44:04",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "xkfuzzy",
    "github_project": "xkfuzzy",
    "github_not_found": true,
    "lcname": "xkfuzzy"
}
        
Elapsed time: 1.53048s