> For the complete documentation index, see [llms.txt](https://undp.gitbook.io/performance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://undp.gitbook.io/performance/methodology/values/transparency-index.md).

# Transparency Index

## Transparency Index

This is the global indicator.

### Introduction to Indicator

{% embed url="<https://www.publishwhatyoufund.org/the-index/2022/united-nations-development-program-undp/>" %}

### Calculation of Scoring.

Publish What You Fund Score = Indicator Score

The traffic light indicator methodology for this indicator is:

* Green = 80+
* Yellow = 60+
* Red = <60

{% hint style="info" %}
This is aligned with the Very Good / Good / Fair scoring at Publish What You Fund
{% endhint %}

## Transparency Dashboard Performance.

{% hint style="info" %}
This is a draft and under testing
{% endhint %}

This is the indicator for Country & Bureau levels.

### Available Data

Downloading the dataset from the UNDP Data Warehouse:

* UNDP\_PROJECTS data - List of all unique projects in UNDP

Columns in UNDP\_PROJECTS data

* hq\_co: Headquarters (HQ), Country Office (CO), or RC.
* bureau: The name of the specialized unit or division responsible.
* rollup\_ou: Organizational unit's code.
* rollup\_ou\_description: Organizational unit's name.
* PROJECT\_ID: Project identifier.
* PROJECT\_NUMBER: Project number.
* PROJECT\_NAME: Name of the project.
* PROJECT\_DESCRIPTION: Description of the project.
* ATLAS\_AWARD\_NUMBER: Atlas award number.
* ATLAS\_AWARD\_DESCIPTION: Description of the Atlas award.
* BUSINESS\_UNIT: Business unit identifier.
* ORGANIZATION: Organization involved in the project.
* DEPARTMENT: Department associated with the project.
* START\_DATE: Start date of the project.
* COMPLETION\_DATE: Completion date of the project.
* CLOSED\_DATE: Date when the project was closed.
* PROJECT\_TYPE: Type of project.
* PROJECT\_TYPE\_DESCRIPTION: Description of the project type.
* PROJECT\_STATUS: Status of the project.
* PROJECT\_MANAGER: Project manager's name.
* PROJECT\_MANAGER\_EMAIL: Email address of the project manager.
* IMPLEMENTING\_PARTNER: Implementing partner code.
* IMPLEMENTING\_PARTNER\_DESCRIPTION: Description of the implementing partner.
* IMPLEMENTATION\_MODALITY: Implementation modality code.
* IMPLEMENTATION\_MODALITY\_DESCRIPTION: Description of the implementation modality.
* PROJECT\_ORIG\_TEMPLATE: Original template of the project.
* PROGRAMME\_FUNDING\_FLAG: Flag indicating program funding.
* GEF\_GCF\_PROJECT\_FLAG: Flag indicating GEF/GCF project.
* Other\_References\_Value: Other references value.

### Calculation:

1\. Define the rollup\_ou\_description to filter:

Filters the DataFrame df\_UNDP\_PROJECTS by selecting only the rows where the value in the 'rollup\_ou' column matches the value stored in the variable target\_rollup\_ou (note: which is 'ALB' in this case as an example).

2\. Calculates the count of projects for each unique project status in the dataframe if count>0.

The statuses are:

* Financially Closed
* On Going
* Operationally Closed
* Submit for Operational Close
* Submitted for Financial close

3\. Visualization - Grouping projects by project status and counting the number of projects in each status.

4\. Filter data by specified project statuses: Select rows from the dataframe where the 'PROJECT\_STATUS' column matches the specified status values: 'On Going', 'Operationally Closed', and 'Submit for Operational Close'.

Then remaining visualizations are done using this filtered dataframe.

5\. Visualization: creates a horizontal bar chart showing the number of projects by project type, with the bars colored in sky blue except for the bars representing projects with null Project\_Type, which are colored in red.

Grouping projects by project type and counting the number of projects in each type - First, count the occurrences of each unique project type in the 'PROJECT\_TYPE' column. Then resets the index and renames the columns to 'Project\_Type' and 'Count' respectively to prepare the data for visualization.

Then, filters the dataframe to select rows where the 'PROJECT\_TYPE' column is null and counting projects with null Project\_Type. After that, adding the count of projects with null Project\_Type to the dataframe. Then created a bar chart including the rest of the project types.

6\. Visualization: Counting the number of projects with and without descriptions - counts the number of non-null values in the 'PROJECT\_DESCRIPTION' column and then calculates the number of projects without descriptions by subtracting the count of projects with descriptions from the total number of projects. Then created a bar chart and annotated each bar with its respective count.

7\. Visualization: Counting the number of projects with and without PROJECT\_TYPE - calculates the number of non-null values in the 'PROJECT\_TYPE' column and then calculates the number of projects without a 'PROJECT\_TYPE' by subtracting the count of projects with 'PROJECT\_TYPE' from the total number of projects. Then created a bar chart and annotated each bar with its respective count.

8\. Visualization: creates a horizontal bar chart, annotates each bar with its respective count - Computes various statistics about projects on such as:

* Total number of projects
* Projects with less than 10 characters in project name
* Projects without description
* Projects without implementing partner
* Projects with description less than 80 characters

Transparency Scoring for CO - Methodology:

Step 1: Make sure having a filtered dataframe (rollup\_ou = \[mention CO], also, PROJECT\_STATUS'].isin(\['On Going', 'Operationally Closed', 'Submit for Operational Close').

Step 2: Penalty Factors for More Severe Penalization (1 to 5): Define penalty factors for each indicator to adjust the severity of penalization -

* Penalty factor for projects with names shorter than 10 characters = 1
* Penalty factor for projects without a description = 2
* Penalty factor for projects without an implementing partner = 4
* Penalty factor for projects with descriptions shorter than 80 characters = 3
* Penalty factor for projects without a project type = 5

Step 3: Count of All Projects : Calculate the total number of projects for normalization purposes.

Step 4: count the occurrences of projects in each noncompliance case:

* projects with names shorter than 10 characters.
* projects without a description.
* projects without an implementing partner.
* projects with descriptions shorter than 80 characters.
* projects without a project type

Step 5: Determine total number of projects for each indicator.

Step 6: Scores Calculation:

Calculation of Percentages: Calculate the percentage of non-compliant projects relative to the total number of projects for each indicator.

Penalty Factor Application: Apply the penalty factors to the percentages of non-compliant projects instead of raw counts. This adjustment ensures that the severity of penalization is proportionate to the extent of non-compliance relative to the total project count.

Scoring Calculation: Calculate the scores based on the adjusted percentages of non-compliant projects multiplied by 20. This scaling operation ensures that the scores fall within a range of 0 to 20.

Finally, individual scores for each indicator, along with the total score out of 100 for the CO, are displayed. Note: With each indicator having a maximum of 20 points and 5 indicators, the maximum possible total score would be 100 points.
