From a4a5648351ac63189a4f1f1efc521f3ceec23486 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Wed, 21 Feb 2024 12:03:36 +0000 Subject: [PATCH 01/10] Update press.md --- content/en/blog/press.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/content/en/blog/press.md b/content/en/blog/press.md index 8ef48ec7..ec939eee 100644 --- a/content/en/blog/press.md +++ b/content/en/blog/press.md @@ -1,10 +1,16 @@ --- title: "News coverage" description: Any news coverage about Harmony -date: 2023-10-02 +date: 2024-02-21 image: "/images/world.png" --- +## 21 Feb 2024, University College London + +University College London has posted on their website about the Harmony project. + +[Read more on UCL's website](https://www.ucl.ac.uk/ioe/departments-and-centres/centres/centre-longitudinal-studies/harmony-new-ai-data-tool-facilitates-global-mental-health-research) + ## 26 Jan 2024, Software Sustainability Institute The team on the Harmony project contacted the Software Sustainability Institute (SSI) and had some conversations with Steve Crouch from the SSI and the University of Southampton about [making our software more sustainable](/making-harmony-sustainable-long-term/). From 47d643230b25394f628d8aeb73ce3f47a0794d9b Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Thu, 22 Feb 2024 21:38:33 +0000 Subject: [PATCH 02/10] update --- content/en/blog/ideas.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/content/en/blog/ideas.md b/content/en/blog/ideas.md index d496bc20..5915e682 100644 --- a/content/en/blog/ideas.md +++ b/content/en/blog/ideas.md @@ -265,6 +265,11 @@ In order to provide a lookup functionality, Harmony would need to index all the **Difficulty:** hard + +## Get Likert scale (response options) + +TODO: write description + ## Ongoing discussion These are proposals in the mailing lists and Discord which have not been published as project ideas yet. The feasibility is yet to be defined, and the idea may be dismissed depending on the feedback. Everyone is welcome to participate in the discussion and to join as a potential mentor. From 5ac2a738efc511b5b4a27b45e959d1dd405331ac Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Mon, 26 Feb 2024 19:00:03 +0000 Subject: [PATCH 03/10] new blogs Maria --- .../data-harmonisation-tools-frameworks.md | 193 ++++++++++++++++++ content/en/blog/harmonised-data.md | 187 +++++++++++++++++ 2 files changed, 380 insertions(+) create mode 100644 content/en/blog/data-harmonisation-tools-frameworks.md create mode 100644 content/en/blog/harmonised-data.md diff --git a/content/en/blog/data-harmonisation-tools-frameworks.md b/content/en/blog/data-harmonisation-tools-frameworks.md new file mode 100644 index 00000000..86523b52 --- /dev/null +++ b/content/en/blog/data-harmonisation-tools-frameworks.md @@ -0,0 +1,193 @@ +--- +title: "Data harmonisation tools and frameworks in 2024" +description: "Harmonised data refers to the standardisation of disparate data formats, schemas, and structures across different sources to enable seamless integration and analysis. It's crucial for enhancing data quality, facilitating integration, improving decision-making, and increasing operational efficiency." +date: 2024-04-02 +image: "/images/05- What is truly harmonized data - the practical overview.svg" +url: "/data-harmonisation-tools-frameworks" +--- + +# Data Harmonisation Tools – Overview + +Organisations typically collect data from multiple sources and for many different reasons. This data comes in various forms and formats – for example, it may be coming from market research, customer research or inter-organisation departments. + +[Data harmonisation](/harmonised-data), an advanced technique used to make sense of all the raw data collected and uses for research purposes, becomes necessary in this case, but unless it is incorporated effectively, organisations might miss the full, holistic view of business performance that they wish to gain. + +So, if the data is not harmonised using the proper tools and frameworks, for example, organisations are bound to miss some very critical data pieces which will indefinitely affect business performance at some point. Plus, management might miss potential opportunities as the data (at this point, before the harmonisation) is in disparate forms and quite widespread. + +With the data harmonisation frameworks and especially the right data harmonisation tools in your arsenal, more informed organisational decision-making can be supported as well as data processing that’s far more efficient. This means that business decisions will ultimately be more accurate and reliable, whilst the quality of the business data on which those decisions are made is also enhanced. Since the now processed and harmonised data is up to date, your organisation is already in an agile state and ready to respond to market changes. + +As mentioned at the beginning, organisations must take data from a variety of sources although these sources may not be the same every single time. They must then process it which in itself can be a cumbersome, time-consuming and often complex process where the chances of inaccuracies can be high. + +However, with a robust data harmonisation process supported by the appropriate tools and frameworks, an organisation’s data can be quickly centralised and up to date. Naturally, less time will be required to index, verify, and track it, thus, enabling swift decision-making according to shifting consumer demand, for example, or evolving market conditions. + +## Data Harmonisation Tools and Frameworks – Before beginning + +Effective data harmonisation is all about using the right mix of manual and automated techniques. At times, more manual techniques may be needed and vice-versa, depending on your business needs, although both need to be incorporated. + +To make data harmonisation at automated process, for instance, AI and a technician’s skills must be collaboratively used. AI, in fact, can be very useful when it comes to data harmonisation as the probability of errors can be greatly reduced along with processing data at a much faster rate. + +Before we can start to use the various data harmonisation frameworks or tools, we need to understand this from the outset: the important of establishing an institutional mechanism for managing data once it is harmonised. A common mechanism is needed, after all, which is easy to manage and update, and one which can also be easily understood by everyone – from the data technicians themselves to management, directors, CEOs and stakeholders. + +Additionally, the data model needs to be “smart” – that is, it is able to easily meet ongoing and future demands, so it doesn’t have to be changed every time, but rather, requires only a few changes or tweaks before being deployed. This will help your business perform at a consistent pace. + +Finally, before kicking off data harmonisation, the key objectives must be established. This means, clearly defining what the business objectives are and the underlying requirements for using data harmonisation. We will expand on this a bit more towards the end of the article. + +So, in short, understand the purpose and specific outcomes you want with the harmonised data. + +We can then discuss some of the specific data harmonisation tools and frameworks you should be using in 2024: + +## Which Tools and Frameworks to use in 2024 for Data Harmonisation? + +As you may already know, data harmonisation refers to a process where disparate data of varying formats, sources and types is integrated via certain tools and frameworks, in order for businesses to make key decisions. + +Data harmonisation in the context of research, for example, refers to an organisation’s ability to connect with external data-based clinical and translational research projects, where patient data across multiple institutions and often different parts of the world (with different languages being spoken) is involved. + +Before we get on with the best tools and frameworks to use for data harmonisation, we should quickly understand the distinction between data harmonisation and data standardisation. While both are used to achieve the same goal (data homogeneity) – the former revolves around data consistency while the latter is about data conformity. + +The Cambridge Biomedical Research Centre based in the UK has a very good definition in this regard: + +_“Standardisation refers to the implementation of uniform processes for prospective collection, storage and transformation of data. Harmonisation is a more flexible approach that is more realistic than standardisation in a collaborative context. Harmonisation refers to the practices which improve the comparability of variables from separate studies, permitting the pooling of data collected in different ways, and reducing study heterogeneity.”_ + +## Best Data Harmonisation Tools and Data Harmonisation Frameworks + +### Federated Query + +A federated query lets one coordinating group publish an executable algorithm (case and control cohorts typically) using analytics, which can then be independently executed by international consortium members. + +The federated query method ensures that no patient-level data is handled outside the organisation, thus, preserving its confidentiality and obviating disclosure. While this is what it does at the basic level, other, more complex federated query models can specify an entire matrix of covariates, tabulations or features – a benchmark in the sequence to come up with a parameter estimate and variance – as well as a merger of matrices to arrive at more robust meta-analyses. + +Since the federated query system only returns cell aggregate sub-totals in the matrix, patient-level data stays in the organisation and never gets exposed. + +### Common Data Models (CDM) + +When it comes to the widespread adoption of EHRs (electronic health records) and the need to reuse clinical data through clinical care, claims, and environmental integration, as well as other data, a very robust approach to data modelling is needed to satisfy the sheer complexity and demand for maximum usability involved in research. + +We understand that data modelling involves determining which data elements are to be stored and how they are to be stored, including their respective relationships as well as constraints. The underlying structure as well as definitions of a data model indicate how the data can be stored, how the values will be interpreted, and how easily that data can be queried. + +Significant efforts have been made to date in order to address some of the issues and challenges involved in data standardisation and effective data modelling – both of which are required for data harmonisation. This has led to a number of widely accepted and prominent CDMs, such as OMOP, i2b2, and PCORnet – all of which have been well-described in Jeffrey G. Khan’s work on data model harmonisation – the [“All of Us” Research Program](https://pubmed.ncbi.nlm.nih.gov/38374255/), to be specific. + +We’ve handpicked a specific section from the publication to help you better understand the CDM landscape: + +The **PCORnet** CDM is actively supported by all networks in the Patient Centered Outcomes Research Institute (PCORI), so it has a wide base of support. In fact, more than 80 institutions have already transformed their data into this exact model, which was originally derived from the Mini-Sentinel data model, which in turn, has had a steadily increasing uptake in data analysis pertaining to claims. + +PCORnet CDM boasts a traditional relational database design – i.e. each of the 15 tables corresponds to a clinical domain, such as labs, medications, diagnosis, etc. The tables feature multiple columns, including the table key (which includes _encounter identifier_ and _patient identifier_, e.g.) and additional details (_medical frequency_, e.g.). As PCORnet CDM received more updates, new clinical elements could be added – for instance, changes in data presentation (_smoking status_, e.g.) and new domains (_lab values_, e.g.). + +Another notable CDM is **i2b2** or ‘Informatics for integration biology in the bedside’. It was initially developed in 2004 through a grant by the NIH (National Institutes of Health), and to this day, is very popular. At present, i2b2 is used in well over 200 sites across the world, including multiple large-scale networks, such as the NCATS’ ACT (Accrual to Clinical Trials) network. It integrates the star-schema format (pioneered by General Mills more than three decades ago) and is a common choice for retail data warehouses. + +The i2b2 star-schema incorporates one large “fact” table which contains individual observations. It’s a narrow table containing several rows per patient encounter. Ontology tables, for example, offer a window into the data, which are typically developed by local implementers. + +The underlying data model is only modified once core features have been added to the platform. + +**OMOP** (Observational Medical Outcomes Partnership) was developed as a shared analytics model from day one. It has been adopted by the OHDSI (Observational Health Data Sciences and Informatics, pronounced “Odyssey”) international consortium, a diverse collaborative effort dedicated to improving data research and quality. + +This CDM is now increasingly being utilised – at present, over 90 sites around the world – owing to OHDSI’s fairly large community and plethora of analytical tools. OMOP utilises a hybrid model providing domain tables in a similar vein to PCORnet, including a “fact” table which contains individual atomic observations (along the same lines as i2b2). + +However, the OMOP schema is fairly more complicated than PCORnet’s, where some domain tables are actually derived values for certain analytical purposes (_drug_era_ or _visit_cost_, e.g.). Unlike PCORnet, however, OMOP offers metadata tables which contain information on terminology & concept relationships (similar to the ontology system in i2b2). + +While each of the above CDMs offer creatively executed solutions to support research, they do come with limitations of their own. Therefore, organisations engaged in strategising their data harmonisation efforts and implementing data warehouses should choose a CDM based on their individual research needs. + +With that said, more and more sites are realising that to participate in multi-site research, they may very well need the support of all of the above data models in order to achieve data interoperability with their chosen collaborator. + +## FHIR: Clinical Data Rendering & Exchange + +Pronounced “Fire”, FHIR (Fast Healthcare Interoperability Resources) is a vital standard pertaining to interoperability created by the HL7 (Health Level 7) International Healthcare Standards organisation. + +The standard consists of data formats and elements – referred to as “resources” – along with an API for exchanging EHRs. Perhaps, FHIR’s greatest benefit is that it outputs natively out of EHRs through different APIs which are required for regulatory purposes. + +The FHIR community is an open and collaborative one, tirelessly working with governments, academia, healthcare, payers, EHR vendors, and patient groups to define a health data exchange specification commonly shared across all groups involved. It builds upon the previous work and standard, while still retaining enough flexibility to make the specification usable and understandable. + +The majority of practical demonstrations of FHIR have proven that it is highly effective at interoperability in open ‘connect-a-thons’ (events aimed at proving the efficacy of the standard). Any organisation engaged in data organisation and harmonisation needs to sit up and take notice because FHIR really matters. Here’s why: + +FHIR is unique when it comes to health IT standards as it has enjoyed very positive responses universally; from health systems, governments, and academics to pharma, payers, and most EHR vendors, if not all. In fact, a number of communities have come up with FHIR Accelerators to enrich the standard’s rapid progress and maturation. Most interestingly, FHIR is widely adopted by the system developers for whom it was originally designed. This has resulted in FHIR’s proliferation throughout the clinical community at large. + +The translational research community stands to benefit exponentially from the generous investments clinical communities make who are already using FHIR. Instead of reinventing specific data standards around research, it would make more sense to leverage the structure, tooling, infrastructure, detail, and specification coming forward from the said clinical communities. Pending approval from the ONC (Office of the National Coordinator) for Health IT, regulations will demand that all EHRs support FHIR APIs, which will drastically simplify data access and delivery in a way that conforms to FHIR’s parameters. Naturally, this will do away with the need for complex data extraction and translation while creating FHIR-based repositories. + +The NIH is actively investing in FHIR, not only for the exchange of EHRs but also for research purposes, from academia to industry. NIH is also encouraging its researchers to explore the use of FHIR’s standard to facilitate in the capturing, integration, and exchanging of clinical data for research, and to enhance capabilities around sharing that researched data. + +FHIR’s modular data models carry a flexible payload and reusable “containers” which can easily be assembled into working systems. This model allows for the exchange of well-defined and structured data in discrete units. + +## Tools and Frameworks: A general overview of how Data Harmonisation works + +As pointed out earlier, data harmonisation is a semi-automated process involving a set of activities which are customised according to a specific business model. + +In order to effectively use the various data harmonisation frameworks and data harmonisation tools, it’s equally important to get a gist of how harmonisation of data works in itself: + +### Acquire the data + +First, the relevant data sources must be identified. Data can then be acquired from these sources, after which data sets are created. + +The source of the data could be anything from market research to consumer research to business documents, for example. Or, all of the above. + +### Data mapping + +A single schema must be created for the entire data to follow. The schema will contain all the required fields and validations. + +### Ingest and clean the data + +Data is always ingested by a system as raw data. The ingested data must, therefore, be evaluated in terms of integrity and validity. Inaccurate, incorrect, or inconsistent parts of the data are then identified as per the schema and modified, if need be. + +Cleaning of data is also required to maintain quality, consistency, and uniformity. + +### Harmonise and evaluate the data + +At this point, the defined schema is applied to the raw data and then harmonised data is obtained. Analyses must be carried out to ensure that the harmonised data complies with the quality standards, along with no loss to its accuracy and originality. + +Harmonisation will always occur according to a business’s unique needs and the processes it follows. + +### Deploy and monitor + +At last, the harmonised data is deployed on the system and made available to all parties or groups involved for further processing. + +The up-to-date data can be accessed across all organisational levels, and modified as and when needed. Teams and departments do not need to develop their own datasets, which can be very expensive, error-prone, conflicting, and time-consuming. + +## The most common types of Data Harmonisation Tools, Techniques, and Frameworks + +While being familiar with some of the specific data harmonisation tools or data harmonisation frameworks available, it is also important to know the different categories of tools, techniques, and frameworks available. For example: + +### Tools for data integration + +Data integration tools are software-based tools which help in combining and transforming data from a variety of sources and formats, into a single unified data set. + +These tools can help in performing many different tasks – for example, data transformation, data extraction, data mapping, data loading, and data synchronisation. + +Data integration tools are designed to help handle different kinds of data like semi-structured, structured and unstructured data, as well as streaming data. Common examples include Apache NiFi, SQL Server Integration Services by Microsoft, and Pentaho Data Integration. + +### Tools for data quality + +Data integration tools are also software-based and designed to help in the assessment, monitoring, and improvement of data when it comes to completeness, accuracy, consistency, validity, and timeliness of that data. + +They can help in identifying and resolving data errors like duplicates, outliers, missing values, and other inconsistencies. Data quality tools also help to enrich, standardise, and normalise data; for example, by adding metadata, converting units, and applying specific rules. + +Some common examples are Talend Data Quality, InfoSphere QualityStage by IBM, and OpenRefine. + +### Tools for data mapping + +These software-powered tools are designed to help in establishing and visualising the various connections and transformations between the data elements of different data sources as well as formats. + +Data mapping tools also help in defining and managing the rules and logic around the transferring, conversion, and validation of data. In addition, they can help to automate and monitor the entire data mapping process, generating documentation and reports on the data mapping results. + +Examples include Informatica PowerCenter, CloverDX Data Mapper, and Altova MapForce. + +### Tools for data visualisation + +With data visualisation tools, you can present and explore data in multiple graphical and interactive forms – e.g. maps, graphs, charts, dashboards, and stories. + +Data visualisation tools are designed to aid you in communicating and sharing data insights with your audience, such as your coworkers, managers, and customers. They can also help you in discovering and analysing the trends, patterns, and outliers associated with your data. + +Examples: Qlik Sense, Power BI, and Tableau. + +### Tools for data modelling + +Data modelling tools are used in the designing, creation, and managing of the data structure and relationships. They can help to define and document the various data attributes, types, elements, rules, and constraints. + +Data modelling tools can also help in generating and executing the code and scripts needed to create as well as modify your data tables, keys, views, and indexes. + +Typical examples of such tools include: Oracle SQL Developer, PowerDesigner, Data Modeler, and ER/Studio Data Architect. + +## Closing thoughts + +As we have learned, there are many options available when it comes to choosing specific data harmonisation frameworks and data harmonisation tools. + +There’s no “good” or “bad” when it comes to using the best ones for harmonising data in 2024. We’re going to quickly reiterate that the choice, ultimately, comes down to your specific business goals and the outcomes you wish to achieve via data harmonisation. + +In any case, you’re halfway there by choosing the right tools and frameworks! diff --git a/content/en/blog/harmonised-data.md b/content/en/blog/harmonised-data.md new file mode 100644 index 00000000..ff9006cc --- /dev/null +++ b/content/en/blog/harmonised-data.md @@ -0,0 +1,187 @@ +--- +title: "Harmonised Data" +description: "Harmonised data refers to the standardisation of disparate data formats, schemas, and structures across different sources to enable seamless integration and analysis. It's crucial for enhancing data quality, facilitating integration, improving decision-making, and increasing operational efficiency." +date: 2024-03-26 +image: "/images/05- What is truly harmonized data - the practical overview.svg" + +--- + +# About Harmonised Data and The Harmony Project + +If you’ve ever heard of data integration then you can easily understand what harmonised data or data harmonisation is: where disparate data sources are brought together into a single, unified location. But where harmonisation goes a step further is that it reorganises data according to the parameters set by a single schema. + +Let’s say you want to combine surveys or questionnaires on mental health with different kinds of wording for similar questions, like “anxiety vs. I feel anxious”. In psychology, market research, or social sciences, for example, this is a common problem, particularly when surveys are run by different organisations or in different regions altogether. + +A data harmonisation project like Harmony uses NLP (natural language processing) to help researchers make vastly better use of existing data extracted from multiple studies – by providing them with the ‘harmonisation’ of the various items and measures used across different studies. + +So, for instance, if your goal is to: + +- Find the absolute best match for a certain set of items which must be extracted from a pool of existing surveys/questionnaires +- Translate items in questionnaires from one language to another +- Take different versions of a particular questionnaire and compare their compatibility +- Or generate harmonised items which capture similar concepts or specific cultural concepts across different languages + +Then Harmony’s ease-of-use and accessibility online can help you get the job done a lot more effectively, easily, and practically. Simply upload your own questionnaires or use the ones provided by Harmony’s extensive online database. Take it a step further by choosing the language of both your input and output items, after which Harmony analyses the semantic similarity and linguistic quality of the items you feed it. + +It will then provide you with a complete list of possible matches and suggestions to be used as harmonised data. + +Since Harmony supports multiple languages, it can help you reach a much wider audience during your research, where you can better collaborate with researchers across multiple cultures and countries. Since Harmony’s database is constantly being updated in real time and improved consistently to provide researchers with the most in-depth and easy-to-access services possible, it is an active development project where you can contribute however you can. + +Harmony is an open source code academic project and non-profit software package which allows psychologists and researchers conducting mental health surveys to improve and aid their research by comparing trends in, say, ADHD, anxiety, or depression, across cultures or time. As a volunteer, you can join the project and help us develop it better, or even if you don’t wish to contribute for now, you can use it extensively (completely free of cost) to carry out your own research and cite it in publications. + +## How does Data Harmonisation work? + +Harmonisation is a process which allows all kinds of data to be used for business and research processes, such as business intelligence (BI) and analytics, but without any of the issues which typically arise due to variations in file types, data types, or naming conventions. + +In the context of mental health research in particular, Harmony lets you upload a set of mental health questionnaires, like the GAD-7 anxiety questionnaire, for instance, where you can choose to upload these either in Excel or PDF format. + +Harmony will pinpoint the questions among all the questionnaires which are identical, antonyms of each other, or similar in meaning, and then generate a network graph – after which you can harmonise datasets with unparalleled ease. + +What makes the Harmony app truly unique is that it utilises Transformer neural network architectures, unlike other similar tools which rely on a word list or dictionary-based approach. So, this means that you can work with multilingual data harmonisation where Harmony will correctly map the GAD-7 used in the UK to the GAD-7 used in Portugal, for example, despite the Portuguese questionnaire being in a language other than English. + +By using Harmony, you can harmonise multilingual datasets as you conduct in-depth research into anxiety and social isolation, for instance, where NLP will supply a quantitative measure of the equivalence involved in the different datasets for mental health. + +When it comes to mental health research, our NLP-based harmonisation tool promotes better data harmonisation integration, letting you compare data from previous studies in order to investigate the active attributes or ingredients of mental health. + +We specifically released Harmony on Pypi, providing you with a very easy-to-use Python library so you can straight away integrate Harmony into your data harmonisation workflow. However, if you’re an R user, you can even import Harmony as an R package to organise your harmonised data and start working without delay. + +Harmony also contains a Docker container on Dockerhub, helping you run a REST API through FastAPI. + +## If Harmonised Data is so great, why isn’t everyone doing it already? + +Fair question! + +While using harmonised categories can certainly make it easier to analyse ethnicity data no matter where it is collected, there can sometimes be barriers when it comes to changing harmonised classifications: + +### Sample sizes are relatively small + +At times, a small number of people are surveyed in specific ethnic groups. That means the data pertaining to those groups must be combined to make the results as reliable as possible, or to even protect the individual identities of the participants. + +In some surveys, certain groups are often combined into one to save time and resources. This actually makes it harder for researchers to compare datasets where those groups are treated individually. + +### Some groups are not collected at all + +In most surveys, it is ideal to have the participants report their ethnicity themselves, rather than have someone report it on their behalf. However, this also means that some data may not be self-reported and this may limit the ethnicity classifications researchers can work with and, therefore, the ability to effectively harmonise data. + +The Ministry of Justice and Home Office data is a good example where the ethnicity is sometimes recorded by a law enforcement officer based on visual appearance alone. In such cases, the only categories available are _White_, _Black_, _Asian_, and _Other_. + +### Unique and varying requirements + +While some departments may require data on specific ethnic groups, others might not. This may be for monitoring purposes alone. + +The Department for Education (DfE), for example, relies on an extended set of codes in order to record teachers’ and students’ ethnicity according to the 2001 Census classifications; having detailed ethnicity codes is very important to the DfE. + +However, these extended codes classify the Chinese group as a category other than ‘Asian’, where it is also complex to derive the harmonised ‘Arab’ category. Differences like these can make comparisons between datasets cumbersome and unnecessarily difficult. + +### Classifications cannot be changed easily + +Changing some datasets may prove to be rather complex, costly, and time-consuming, like large administrative ones, for example. + +The NHS is still using the outdated 2001 harmonised Census categories. Significant changes need to be made to the large administrative systems used by the NHS which will require time. + +### Maintaining consistency + +A common theme present in all these barriers is the innate desire to maintain data consistency over time. + +One the one hand, changing categories in order to align with every single Census gives researchers a minimum of 10 years’ worth of consistent data; on the other, the datasets themselves can actually change a lot over time, just to support the various classifications. + +So, a data owner may want to keep these classifications unchanged in their dataset for the sake of maintaining a consistent time series throughout. + +Harmonisation is certainly a good thing in theory although putting it into practice can take time and may even get tricky – that is, if you’re not using the right tool. + +Harmony does away with all of these barriers and then some. + +## Some great examples of Harmonised Data Practices over the years + +We now understand that harmonised data refers to the efforts made to combine data from multiple sources, providing users with a very comparable and transparent view of data across different studies and even cultures as well as regions. + +The process is now becoming more significant, especially in the field of sociology, demography and mental health research – unsurprisingly, the needs revolving around data harmonisation are growing very rapidly because the sheer volume of data and the need to readily share it is always in high demand. + +Here are a few examples of data harmonisation efforts over the years: + +**North Atlantic Population Project** – Harmonised data from consensuses of Great Britain, Canada, Sweden, Norway and the US dating back to the 1800s. + +**Terra Populous** – Successfully integrated the world’s population and environmental data between 1960 till present. + +**Integrated Health Interview Series** – Harmonised data collected on individuals who took the US national health interview survey between the 1960s till present. + +**IPUMS CPS** – Successfully harmonised data each March between 1962 and present on individuals who took part in the Current Population Survey. + +**American Time Use Survey** – Data was harmonised from 2003 onward on how adults in the US utilise their time. + +**IPUMS International** – Data harmonisation from 1960 onward on individuals taking part in 130 consensuses from across the globe. + +## Business Benefits of Harmonised Data and why ‘Single Source of Truth’ is Critical to Success + +### How harmonised data benefits businesses + +In plain terms, harmonised data boosts the value of data and the way it is utilised within a business. + +This harmonisation of data also makes it possible for a business to transform fragmented and often inaccurate data into workable pieces of information, thus, helping them gain fresh insights, visualisations and analyses. + +Practically, this translates to researchers using the harmonised data to reduce the time and effort needed to discover key insights, access the required business intelligence, and even detect early disruptions. Not only that but it can significantly reduce the overall cost associated with complex data analysis as well as the cost of processing and handling that data over the long term. + +Think about it – if a business is spending less time scrambling around to identify the right sources of data, it can certainly spend that time far more effectively elsewhere – like priming itself for better growth and tweaking its strategy to make a larger revenue impact. + +One thing is inevitable: whether a business has just started or it’s been around for decades, it will be gathering massive amounts of data from different sources. In that process is the possibility that the vast amount of information gathered from a complete range of sources will eventually introduce errors and misinformation. Additionally, the sheer volume of information a business may collect throughout its course can be very overwhelming, cumbersome, and at times, not that useful. + +Now, with the use of data harmonisation tools or apps (such as Harmony), the same data can be transformed into a goldmine of BI and insights. It allows organisations to quickly learn new things about their customers and competitors as well as understand shifting market trends and forces. + +Nearly every company across the world is now mining and storing data in some form or the other to make smarter, more informed business decisions and manage their customers as well as stakeholders more effectively. But before anything else, there is an acute need to harmonise the data. + +It’s no secret that most companies are spending a ridiculous amount of time and resources on conducting surveys and focus group sessions, as well as gathering information from a variety of courses, such as social media networks, news channels, and the internet. However, all the information gathered does not simply come in a “ready to use” format available in a single, manageable, and cohesive body. Rather, it comes as a hotch-potch of raw data. + +To make sense of this data as a whole, you must harmonise it. Many businesses believe that their data is harmonised but then wonder why they are not getting the required insights or business intelligence from it, for example. The truth is, that data is not fully harmonised and not quite ready for business analysis. There are still misleading values present in it, not to mention the possibility of duplicate statistics and irrelevant pointers. + +When businesses use the correct data harmonisation methods, they can easily standardise their data and create a single source of verifiable and “ready to use” information – that’s very important, to begin with! + +### Why a single source of truth is critical to success + +The sheer amount and variety of data that businesses are churning out and storing each day is reaching gargantuan volumes, especially with the increased use of handhelds, wearable technology and IoT (Internet of Things) devices which seem to be growing all the time. + +The massive amounts of data generated needs to be gathered and siloed, and then formatted into a clean, consistent body of information so that it can add real value to the business. + +When organisations learn how to do data harmonisation effectively, they can easily understand the direction their business is headed in; they can stay a few steps ahead of the competition; and they can also position themselves more effectively to withstand market disruptions. + +But to make it work, businesses must be able to access high-quality and “cleansed” data, so that it can: + +- Analyse their sales and marketing efforts in a more in-depth way +- Quickly identify the pain points of its customers, stakeholders, and even staff members +- Discover any insights which it can use to understand whether specific aspects of the business are contributing to success or detracting from it. + +Organisations and entrepreneurs who learn to manage their raw information and data successfully, can easily place themselves in a strategic winning position. Put another way, if you gain the ability to access data that’s updated regularly, you can save yourself plenty of time and resources which may be otherwise spent on re-verifying data from multiple sources. + +This effectively puts you in a position where you can easily identify BI insights, making your organisation more agile and responsive to the various market conditions and triggers. So, to put it in a short, sweet, and simple way, harmonised data acts as a marker for business success because: + +- Data is supplied to you in a form which allows you to quickly analyse it both internally and externally. +- You gain democratic access to hierarchies, enabling broad views across multiple data sources. +- You have more than enough usable information to drive data-based decisions, and that too without too much overwhelming or useless detail. + +## What are some of the challenges associated with harmonising data? + +As one might imagine, combining different sets of data across multiple systems, sources, and regions can be a challenging proposition for any organisation. Add to it the speed and scale at which businesses are now required to ingest raw data and make sense of it, and it can seem nearly impossible to achieve 100% accuracy once the data has been processed. + +Rarely will you come across a business whose customers, partners, audience, or employees, for example, are not spread across different regions and cultures. For instance, we may have broad and wide-ranging variations in languages, regulations, naming conventions, and addressing – all of which can present some unique challenging with varying degrees of complexity as we attempt to unify data across global systems. + +Using contact information alone, for example, transliteration must consider both cultural and regional differences in how names as well as addresses might be entered, formatted and organised – while maintaining the highest level of accuracy which anyone, irrespective of their region or language, can trust. + +With businesses entering and re-entering an increasing number of records across their systems, a fail-proof way must exist to ensure that the data entered is matched as accurately and correctly as possible. So, unless there’s a proper data harmonisation tool or app in place, organisations will find it very hard, almost impossible, in fact, to obtain and maintain a centralised data governance strategy – because varying insights as well as values will be generated for the very same standard of data across different sources. + +Unless there is a clear indication of which data source is the most trusted and relevant, research teams trying to make sense of multiple sources of data will find themselves dealing with the same issue: differing insights for the same data derived from different sources. + +## Data harmonisation best practices + +- Great data harmonisation is typically a mix of automated tasks and manual inputs. For example, calibrated AI (artificial intelligence) and ML (machine learning) combined with the skilled work of data scientists, can make a large portion of the overall process automated over time. By utilising AI, for example, the risk of errors may be reduced while the length of time to derive insights can also be cut down. +- More smart data models need to be conceived so that both today’s ongoing needs and future demands can be wholeheartedly met. By borrowing on the right industry and sector expertise, the process of data harmonisation can both save time as well as enable data analysts to harmonise data directly, rather than rely on a third party entity or group. +- One of the most pressing challenges in organisational data management is mapping the data in a way where it is easy to understand how and when the various data sources interact with the existing data infrastructure. +- This can be a very challenging task if the team of researchers and analysts are inexperienced to begin with, or even if they are, but don’t know which tools to use. + +By using Harmony, you can safely eliminate such challenges while also adding the above best practices and your own into the mix. + +## Closing thoughts + +There are no two ways about it: data harmonisation is the future of business management success. It is the ultimate tool to support efficient data processing which ensures that businesses are making smart, fruitful, and profitable decisions from day one. + +In the years ahead, harmonised data will be central to an organisation’s success and a prerequisite to ensure continued business efficiency and overall success. + +Start your journey with Harmony today to stay ahead of the competitive curve and extract the desired insights quickly from your surveys and/or questionnaires. From 2bc25c380de8b6e6a00e4e94c44b5abfbc2063e3 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Tue, 27 Feb 2024 10:44:10 +0000 Subject: [PATCH 04/10] update images --- .../06- Data harmonisation tools and frameworks in 2024.svg | 1 + ...rvey data harmonisation - the steps and expected results.svg | 1 + assets/images/08- Questionnaire data analysis the smart way.svg | 1 + .../images/09- Master data harmonisation for business uses.svg | 1 + .../10- How to harmonize questionnaires - X practical steps.svg | 1 + ... matching and common items in questionnaires and surveys.svg | 1 + ...mbining multiple survey sorces - the best practices list.svg | 1 + .../13- How to extract and process data from questionnaires.svg | 1 + ...4- How to tabulate questionnaires and survey result data.svg | 1 + ...15- Data harmonisation in public sector - X applications.svg | 1 + assets/images/16- Data harmonisation in real estate.svg | 1 + assets/images/17- Data harmonisation in education.svg | 1 + ...ernational cancer data harmonization - the state of 2024.svg | 1 + ...R&D data harmonization - tools, standards, and processes.svg | 1 + ...onization in healthcare - from public to private records.svg | 1 + ...tion for marketing purposes - the strategies for success.svg | 1 + assets/images/22- Data harmonization in biopharma.svg | 1 + assets/images/23- Agriculture data harmonization.svg | 1 + ...linical trial and research data harmonization principles.svg | 1 + .../25- International customs data organization for goods.svg | 1 + .../images/26- Survey data harmonization in social sciences.svg | 1 + assets/images/27- Climate data harmonization in practice.svg | 1 + ... Data harmonization in public sector - the 2024 overview.svg | 2 ++ ... data harmonization - an example of data science at work.svg | 1 + assets/images/30- MRI Data harmonization case study.svg | 1 + content/en/blog/combining-multiple-survey-sources.md | 2 +- content/en/blog/data-harmonisation-healthcare.md | 2 +- content/en/blog/data-harmonisation-marketing.md | 2 +- content/en/blog/data-harmonisation-tools-frameworks.md | 2 +- content/en/blog/tabulate-questionnaire-survey-result-data.md | 2 +- 30 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 assets/images/06- Data harmonisation tools and frameworks in 2024.svg create mode 100644 assets/images/07- Survey data harmonisation - the steps and expected results.svg create mode 100644 assets/images/08- Questionnaire data analysis the smart way.svg create mode 100644 assets/images/09- Master data harmonisation for business uses.svg create mode 100644 assets/images/10- How to harmonize questionnaires - X practical steps.svg create mode 100644 assets/images/11- Finding matching and common items in questionnaires and surveys.svg create mode 100644 assets/images/12- Combining multiple survey sorces - the best practices list.svg create mode 100644 assets/images/13- How to extract and process data from questionnaires.svg create mode 100644 assets/images/14- How to tabulate questionnaires and survey result data.svg create mode 100644 assets/images/15- Data harmonisation in public sector - X applications.svg create mode 100644 assets/images/16- Data harmonisation in real estate.svg create mode 100644 assets/images/17- Data harmonisation in education.svg create mode 100644 assets/images/18- International cancer data harmonization - the state of 2024.svg create mode 100644 assets/images/19- Pharmaceutical and R&D data harmonization - tools, standards, and processes.svg create mode 100644 assets/images/20- Data harmonization in healthcare - from public to private records.svg create mode 100644 assets/images/21- Data harmonization for marketing purposes - the strategies for success.svg create mode 100644 assets/images/22- Data harmonization in biopharma.svg create mode 100644 assets/images/23- Agriculture data harmonization.svg create mode 100644 assets/images/24- Clinical trial and research data harmonization principles.svg create mode 100644 assets/images/25- International customs data organization for goods.svg create mode 100644 assets/images/26- Survey data harmonization in social sciences.svg create mode 100644 assets/images/27- Climate data harmonization in practice.svg create mode 100644 assets/images/28- Data harmonization in public sector - the 2024 overview.svg create mode 100644 assets/images/29- Plankton data harmonization - an example of data science at work.svg create mode 100644 assets/images/30- MRI Data harmonization case study.svg diff --git a/assets/images/06- Data harmonisation tools and frameworks in 2024.svg b/assets/images/06- Data harmonisation tools and frameworks in 2024.svg new file mode 100644 index 00000000..0eb0cbb4 --- /dev/null +++ b/assets/images/06- Data harmonisation tools and frameworks in 2024.svg @@ -0,0 +1 @@ +06- Data harmonisation tools and frameworks in 2024</> \ No newline at end of file diff --git a/assets/images/07- Survey data harmonisation - the steps and expected results.svg b/assets/images/07- Survey data harmonisation - the steps and expected results.svg new file mode 100644 index 00000000..173fe6be --- /dev/null +++ b/assets/images/07- Survey data harmonisation - the steps and expected results.svg @@ -0,0 +1 @@ +07- Survey data harmonisation - the steps and expected results \ No newline at end of file diff --git a/assets/images/08- Questionnaire data analysis the smart way.svg b/assets/images/08- Questionnaire data analysis the smart way.svg new file mode 100644 index 00000000..138c968f --- /dev/null +++ b/assets/images/08- Questionnaire data analysis the smart way.svg @@ -0,0 +1 @@ +08- Questionnaire data analysis the smart way \ No newline at end of file diff --git a/assets/images/09- Master data harmonisation for business uses.svg b/assets/images/09- Master data harmonisation for business uses.svg new file mode 100644 index 00000000..bcc3c19e --- /dev/null +++ b/assets/images/09- Master data harmonisation for business uses.svg @@ -0,0 +1 @@ +09- Master data harmonisation for business uses \ No newline at end of file diff --git a/assets/images/10- How to harmonize questionnaires - X practical steps.svg b/assets/images/10- How to harmonize questionnaires - X practical steps.svg new file mode 100644 index 00000000..326578a0 --- /dev/null +++ b/assets/images/10- How to harmonize questionnaires - X practical steps.svg @@ -0,0 +1 @@ +10- How to harmonize questionnaires - X practical steps-01 \ No newline at end of file diff --git a/assets/images/11- Finding matching and common items in questionnaires and surveys.svg b/assets/images/11- Finding matching and common items in questionnaires and surveys.svg new file mode 100644 index 00000000..18cfa591 --- /dev/null +++ b/assets/images/11- Finding matching and common items in questionnaires and surveys.svg @@ -0,0 +1 @@ +11- Finding matching and common items in questionnaires and surveys \ No newline at end of file diff --git a/assets/images/12- Combining multiple survey sorces - the best practices list.svg b/assets/images/12- Combining multiple survey sorces - the best practices list.svg new file mode 100644 index 00000000..93c07bfd --- /dev/null +++ b/assets/images/12- Combining multiple survey sorces - the best practices list.svg @@ -0,0 +1 @@ +12- Combining multiple survey sorces - the best practices list \ No newline at end of file diff --git a/assets/images/13- How to extract and process data from questionnaires.svg b/assets/images/13- How to extract and process data from questionnaires.svg new file mode 100644 index 00000000..c53f1bd8 --- /dev/null +++ b/assets/images/13- How to extract and process data from questionnaires.svg @@ -0,0 +1 @@ +13- How to extract and process data from questionnaires \ No newline at end of file diff --git a/assets/images/14- How to tabulate questionnaires and survey result data.svg b/assets/images/14- How to tabulate questionnaires and survey result data.svg new file mode 100644 index 00000000..e993c537 --- /dev/null +++ b/assets/images/14- How to tabulate questionnaires and survey result data.svg @@ -0,0 +1 @@ +14- How to tabulate questionnaires and survey result data \ No newline at end of file diff --git a/assets/images/15- Data harmonisation in public sector - X applications.svg b/assets/images/15- Data harmonisation in public sector - X applications.svg new file mode 100644 index 00000000..ba436d52 --- /dev/null +++ b/assets/images/15- Data harmonisation in public sector - X applications.svg @@ -0,0 +1 @@ +15- Data harmonisation in public sector - X applications \ No newline at end of file diff --git a/assets/images/16- Data harmonisation in real estate.svg b/assets/images/16- Data harmonisation in real estate.svg new file mode 100644 index 00000000..d3ea958a --- /dev/null +++ b/assets/images/16- Data harmonisation in real estate.svg @@ -0,0 +1 @@ +16- Data harmonisation in real estate \ No newline at end of file diff --git a/assets/images/17- Data harmonisation in education.svg b/assets/images/17- Data harmonisation in education.svg new file mode 100644 index 00000000..03e6ee38 --- /dev/null +++ b/assets/images/17- Data harmonisation in education.svg @@ -0,0 +1 @@ +17- Data harmonisation in education \ No newline at end of file diff --git a/assets/images/18- International cancer data harmonization - the state of 2024.svg b/assets/images/18- International cancer data harmonization - the state of 2024.svg new file mode 100644 index 00000000..25eba27f --- /dev/null +++ b/assets/images/18- International cancer data harmonization - the state of 2024.svg @@ -0,0 +1 @@ +18- International cancer data harmonization - the state of 2024 \ No newline at end of file diff --git a/assets/images/19- Pharmaceutical and R&D data harmonization - tools, standards, and processes.svg b/assets/images/19- Pharmaceutical and R&D data harmonization - tools, standards, and processes.svg new file mode 100644 index 00000000..246a4049 --- /dev/null +++ b/assets/images/19- Pharmaceutical and R&D data harmonization - tools, standards, and processes.svg @@ -0,0 +1 @@ +19- Pharmaceutical and R&amp;D data harmonization - tools, standards, and processes \ No newline at end of file diff --git a/assets/images/20- Data harmonization in healthcare - from public to private records.svg b/assets/images/20- Data harmonization in healthcare - from public to private records.svg new file mode 100644 index 00000000..f6e6f3df --- /dev/null +++ b/assets/images/20- Data harmonization in healthcare - from public to private records.svg @@ -0,0 +1 @@ +20- Data harmonization in healthcare - from public to private records35%45%95%50% \ No newline at end of file diff --git a/assets/images/21- Data harmonization for marketing purposes - the strategies for success.svg b/assets/images/21- Data harmonization for marketing purposes - the strategies for success.svg new file mode 100644 index 00000000..98ae0b26 --- /dev/null +++ b/assets/images/21- Data harmonization for marketing purposes - the strategies for success.svg @@ -0,0 +1 @@ +21- Data harmonization for marketing purposes - the strategies for success \ No newline at end of file diff --git a/assets/images/22- Data harmonization in biopharma.svg b/assets/images/22- Data harmonization in biopharma.svg new file mode 100644 index 00000000..c2a8b756 --- /dev/null +++ b/assets/images/22- Data harmonization in biopharma.svg @@ -0,0 +1 @@ +22- Data harmonization in biopharma \ No newline at end of file diff --git a/assets/images/23- Agriculture data harmonization.svg b/assets/images/23- Agriculture data harmonization.svg new file mode 100644 index 00000000..52c9ccea --- /dev/null +++ b/assets/images/23- Agriculture data harmonization.svg @@ -0,0 +1 @@ +23- Agriculture data harmonization \ No newline at end of file diff --git a/assets/images/24- Clinical trial and research data harmonization principles.svg b/assets/images/24- Clinical trial and research data harmonization principles.svg new file mode 100644 index 00000000..11655f0a --- /dev/null +++ b/assets/images/24- Clinical trial and research data harmonization principles.svg @@ -0,0 +1 @@ +24- Clinical trial and research data harmonization principles \ No newline at end of file diff --git a/assets/images/25- International customs data organization for goods.svg b/assets/images/25- International customs data organization for goods.svg new file mode 100644 index 00000000..c456d8c4 --- /dev/null +++ b/assets/images/25- International customs data organization for goods.svg @@ -0,0 +1 @@ +25- International customs data organization for goods \ No newline at end of file diff --git a/assets/images/26- Survey data harmonization in social sciences.svg b/assets/images/26- Survey data harmonization in social sciences.svg new file mode 100644 index 00000000..40867ecf --- /dev/null +++ b/assets/images/26- Survey data harmonization in social sciences.svg @@ -0,0 +1 @@ +26- Survey data harmonization in social sciences \ No newline at end of file diff --git a/assets/images/27- Climate data harmonization in practice.svg b/assets/images/27- Climate data harmonization in practice.svg new file mode 100644 index 00000000..9f2a3e4a --- /dev/null +++ b/assets/images/27- Climate data harmonization in practice.svg @@ -0,0 +1 @@ +27- Climate data harmonization in practice \ No newline at end of file diff --git a/assets/images/28- Data harmonization in public sector - the 2024 overview.svg b/assets/images/28- Data harmonization in public sector - the 2024 overview.svg new file mode 100644 index 00000000..7b5fae77 --- /dev/null +++ b/assets/images/28- Data harmonization in public sector - the 2024 overview.svg @@ -0,0 +1,2 @@ +28- Data harmonization in public sector - the 2024 overview \ No newline at end of file diff --git a/assets/images/29- Plankton data harmonization - an example of data science at work.svg b/assets/images/29- Plankton data harmonization - an example of data science at work.svg new file mode 100644 index 00000000..4745a4e8 --- /dev/null +++ b/assets/images/29- Plankton data harmonization - an example of data science at work.svg @@ -0,0 +1 @@ +29- Plankton data harmonization - an example of data science at work \ No newline at end of file diff --git a/assets/images/30- MRI Data harmonization case study.svg b/assets/images/30- MRI Data harmonization case study.svg new file mode 100644 index 00000000..6cd60d13 --- /dev/null +++ b/assets/images/30- MRI Data harmonization case study.svg @@ -0,0 +1 @@ +30- MRI Data harmonization case study \ No newline at end of file diff --git a/content/en/blog/combining-multiple-survey-sources.md b/content/en/blog/combining-multiple-survey-sources.md index cc4d05cb..27a94961 100644 --- a/content/en/blog/combining-multiple-survey-sources.md +++ b/content/en/blog/combining-multiple-survey-sources.md @@ -3,7 +3,7 @@ title: "Combining Multiple Survey Sources - Best Practices" Discription: "In the ever-evolving landscape of data-driven decision-making, the art of harmonizing content from multiple survey sources has become increasingly vital. This blog post delves into the best practices for combining diverse survey datasets, ensuring reliability, validity, and insightful analysis. Drawing on established research methodologies, we aim to guide readers through the intricate process of data integration." date: 2024-02-27 author: "Vidhya Sudani" -image: "/images/Combining Multiple Survey Sources.webp" +image: "/images/12- Combining multiple survey sorces - the best practices list.svg" --- diff --git a/content/en/blog/data-harmonisation-healthcare.md b/content/en/blog/data-harmonisation-healthcare.md index 196dd82d..bd2ac4ac 100644 --- a/content/en/blog/data-harmonisation-healthcare.md +++ b/content/en/blog/data-harmonisation-healthcare.md @@ -3,7 +3,7 @@ title: "Data Harmonisation in Healthcare: From Public to Private Records" Discription: "Data harmonisation in healthcare is a critical process aimed at integrating disparate data sources to streamline patient care and enhance research quality. This blog explores the essence, methodologies, impacts, and initiatives surrounding data harmonisation, highlighting its pivotal role in the healthcare sector." date: 2024-03-19 author: "Vidhya Sudani" -image: "/images/healthcare data harmonization.webp" +image: "/images/20- Data harmonization in healthcare - from public to private records.svg" --- diff --git a/content/en/blog/data-harmonisation-marketing.md b/content/en/blog/data-harmonisation-marketing.md index 8a9635c7..ce826653 100644 --- a/content/en/blog/data-harmonisation-marketing.md +++ b/content/en/blog/data-harmonisation-marketing.md @@ -3,7 +3,7 @@ title: "Data Harmonisation for Marketing Success: Strategies and Insights" Discription: "In an era where data is the new oil, marketing strategies are increasingly fueled by the accurate, harmonious integration of diverse data sources. This blog post explores the pivotal strategies for data harmonisation in marketing to improving equity through data insights." date: 2024-03-26 author: "Vidhya Sudani" -image: "/images/Data Harmonization for Marketing Success.webp" +image: "/images/21- Data harmonization for marketing purposes - the strategies for success.svg" --- diff --git a/content/en/blog/data-harmonisation-tools-frameworks.md b/content/en/blog/data-harmonisation-tools-frameworks.md index 86523b52..45e577de 100644 --- a/content/en/blog/data-harmonisation-tools-frameworks.md +++ b/content/en/blog/data-harmonisation-tools-frameworks.md @@ -2,7 +2,7 @@ title: "Data harmonisation tools and frameworks in 2024" description: "Harmonised data refers to the standardisation of disparate data formats, schemas, and structures across different sources to enable seamless integration and analysis. It's crucial for enhancing data quality, facilitating integration, improving decision-making, and increasing operational efficiency." date: 2024-04-02 -image: "/images/05- What is truly harmonized data - the practical overview.svg" +image: "/images/06- Data harmonisation tools and frameworks in 2024.svg" url: "/data-harmonisation-tools-frameworks" --- diff --git a/content/en/blog/tabulate-questionnaire-survey-result-data.md b/content/en/blog/tabulate-questionnaire-survey-result-data.md index ddd3bc5e..eadf147f 100644 --- a/content/en/blog/tabulate-questionnaire-survey-result-data.md +++ b/content/en/blog/tabulate-questionnaire-survey-result-data.md @@ -3,7 +3,7 @@ title: "Tabulating Questionnaire and Survey Result Data" Discription: "Tabulating questionnaires and survey results is an essential skill for researchers, marketers, educators, and many professionals. This process involves organizing and summarizing the collected data to make it understandable and actionable. This article will guide you through the steps of tabulating survey results, including some best practices and a practical exercise to help solidify your understanding." date: 2024-03-05 author: "Vidhya Sudani" -image: "/images/Tabulating Questionnaire and Survey Result Data.webp" +image: "/images/14- How to tabulate questionnaires and survey result data.svg" --- From d461d413e446d2975f5de96cac703a966a065afb Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Thu, 29 Feb 2024 14:56:48 +0000 Subject: [PATCH 05/10] developer guide --- content/en/blog/developer-guide.md | 89 ++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 content/en/blog/developer-guide.md diff --git a/content/en/blog/developer-guide.md b/content/en/blog/developer-guide.md new file mode 100644 index 00000000..5fc3d436 --- /dev/null +++ b/content/en/blog/developer-guide.md @@ -0,0 +1,89 @@ +--- +title: Developer guide +description: Want to help develop Harmony? +date: 2024-02-29 +image: "images/08- Questionnaire data analysis the smart way.svg" +--- + +# Git and GitHub workflow + +The preferred workflow for contributing to Harmony’s repository is to fork the [main repository](https://github.com/harmonydata/harmony/) on GitHub, clone, and develop on a new branch. + +Please read our general guide about [contributing to Harmony](/contributing-to-harmony/). + +1. Fork the [main project repository](https://github.com/harmonydata/harmony) by clicking on the ‘Fork’ button near the top right of the page. This creates a copy of the code under your GitHub user account. For more details on how to fork a repository see [this guide](https://help.github.com/articles/fork-a-repo/). +2. [Clone](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) your fork of the Harmony repo from your GitHub account to your local disk: + +``` +git clone git@github.com:harmonydata/harmony.git + +cd harmony +``` + +1. Configure and link the remote for your fork to the upstream repository: + +``` +git remote -v + +git remote add upstream +``` + +1. Verify the new upstream repository you’ve specified for your fork: + +``` +git remote -v + +\> origin /Harmony.git> (fetch) + +\> origin /Harmony.git> (push) + +\> upstream (fetch) + +\> upstream (push) +``` + +1. [Sync](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork) the main branch of your fork with the upstream repository: + +``` +git fetch upstream + +git checkout main + +git merge upstream/main +``` + +1. Create a new feature branch from the main branch to hold your changes: + +``` +git checkout main + +git checkout -b +``` + +Always use a feature branch. It’s good practice to never work on the main branch! Name the feature branch after your contribution. + +1. Develop your contribution on your feature branch. Add changed files using git add and then git commit files to record your changes in Git: + +``` +git add + +git commit +``` + +1. When finished, push the changes to your GitHub account with: + +``` +git push --set-upstream origin my-feature-branch +``` + +1. Follow [these instructions](https://help.github.com/articles/creating-a-pull-request-from-a-fork) to create a pull request from your fork. If your work is still work in progress, open a draft pull request. + +Note + +We recommend to open a pull request early, so that other contributors become aware of your work and can give you feedback early on. + +1. To add more changes, simply repeat steps 7 - 8. Pull requests are updated automatically if you push new changes to the same branch. + +Note + +If any of the above seems like magic to you, look up the [Git documentation](https://gitscm.com/documentation). If you get stuck, chat with us on [Discord](https://discord.gg/harmonydata), or contact us at [harmonydata.ac.uk](https://harmonydata.ac.uk/contact). From bee2a93e5d5dbb23dbcd0ed8971dc06889f11229 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Fri, 1 Mar 2024 10:09:59 +0000 Subject: [PATCH 06/10] tracker --- content/en/blog/tracker.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 content/en/blog/tracker.md diff --git a/content/en/blog/tracker.md b/content/en/blog/tracker.md new file mode 100644 index 00000000..bc1102bb --- /dev/null +++ b/content/en/blog/tracker.md @@ -0,0 +1,29 @@ +--- +title: Harmony issue tracker +description: Want to track issues on Harmony's development? +date: 2024-03-01 +image: "images/08- Questionnaire data analysis the smart way.svg" +--- + +# Tracking Harmony issues and raising feedback + +Have you found a problem with Harmony? + +You can use the links on the Harmony homepage at harmonydata.ac.uk - you can see there are buttons titled *Raise NLP issue* and *Raise UI issue*, which take you to the process for logging issues in Github. + +{{< image src="images/blog/raise-issue.png" alt="Screenshot" >}} + +The issues remain in the issue trackers and can be assigned to people either under "Assignee" or in the comments: + +* Harmony Python library issue tracker: https://github.com/harmonydata/harmony/issues - this is everything to do with the NLP logic of Harmony +* Harmony API issue tracker: https://github.com/harmonydata/harmonyapi/issues +* Harmony front end issue tracker: https://github.com/harmonydata/app/issues - this is everything to do with the front end and graphical interface of Harmony + +If you're unsure where to put an issue, feel free to just raise it on any of the issue boards. + +In these issue trackers, you can see each item and who's working on it. You can also see closed issues in this view. + + +You can discuss issues in our Discord [https://discord.gg/harmonydata](https://discord.gg/harmonydata) - the link is also on the homepage. + +If you're a developer, check out [our developer guide](/developer-guide/) which explains how to use Github! And don't forget to [join our community](/community/). From ca42b42a0cb31b2d7d70493c21e53e5049abbe50 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Fri, 1 Mar 2024 10:11:26 +0000 Subject: [PATCH 07/10] image --- assets/images/raise-issue.png | Bin 0 -> 159551 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/images/raise-issue.png diff --git a/assets/images/raise-issue.png b/assets/images/raise-issue.png new file mode 100644 index 0000000000000000000000000000000000000000..a8975c856670506a0f2f2c3f6084853e8f3f474d GIT binary patch literal 159551 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�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 P00000NkvXXu0mjf5)@6# literal 0 HcmV?d00001 From 4ef299c93ae219aaa8be63457285adb0809a0695 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Fri, 1 Mar 2024 12:39:13 +0000 Subject: [PATCH 08/10] Add categories --- content/en/blog/analyse-two-completely-different-surveys.md | 1 + ...-the-future-retrospectively-harmonizing-questionnaire-data.md | 1 + content/en/blog/combining-multiple-survey-sources.md | 1 + content/en/blog/community.md | 1 + content/en/blog/contribute-open-source-project.md | 1 + content/en/blog/contributing.md | 1 + content/en/blog/data-harmonisation-examples-business.md | 1 + content/en/blog/data-harmonisation-healthcare.md | 1 + content/en/blog/data-harmonisation-marketing.md | 1 + .../blog/data-harmonisation-steps-techniques-best-practices.md | 1 + content/en/blog/data-harmonisation-tools-frameworks.md | 1 + content/en/blog/data-harmonisation.md | 1 + content/en/blog/data-standardisation-vs-harmonisation.md | 1 + content/en/blog/developer-guide.md | 1 + content/en/blog/file-formatting-guidance.md | 1 + content/en/blog/harmonised-data.md | 1 + content/en/blog/harmony-cran.md | 1 + ...-5-things-implementation-science-has-taught-us-to-focus-on.md | 1 + content/en/blog/harmony-multilingual.md | 1 + content/en/blog/harmony-questionnaire.md | 1 + content/en/blog/harmony-r.md | 1 + content/en/blog/harmony-tidal-workshop.md | 1 + content/en/blog/harmony_r_example.md | 1 + content/en/blog/harmony_social_media.md | 1 + content/en/blog/harmony_update.md | 1 + content/en/blog/how-does-harmony-work.md | 1 + ...n-kufungisisa-a-cultural-concept-of-distress-from-zimbabwe.md | 1 + content/en/blog/ideas.md | 1 + content/en/blog/kaggle.md | 1 + content/en/blog/marketing.md | 1 + content/en/blog/measuring-the-performance-of-nlp-algorithms.md | 1 + content/en/blog/orientation-event.md | 1 + content/en/blog/ppie-for-secondary-data-analysis.md | 1 + content/en/blog/press.md | 1 + content/en/blog/radio-podcast-about-wellcome-data-prize.md | 1 + content/en/blog/releasing-harmony-api.md | 1 + ...unning-harmony-in-your-browser-with-no-internet-connection.md | 1 + ...mantic-text-matching-with-deep-learning-transformer-models.md | 1 + content/en/blog/sign-up-to-test-harmony.md | 1 + content/en/blog/sustainability.md | 1 + content/en/blog/tabulate-questionnaire-survey-result-data.md | 1 + content/en/blog/tracker.md | 1 + content/en/blog/troubleshooting.md | 1 + .../en/blog/what-features-would-you-like-to-see-in-harmony.md | 1 + content/en/blog/what-is-truly-harmonised-data.md | 1 + 45 files changed, 45 insertions(+) diff --git a/content/en/blog/analyse-two-completely-different-surveys.md b/content/en/blog/analyse-two-completely-different-surveys.md index 2bb4abfb..85ba0549 100644 --- a/content/en/blog/analyse-two-completely-different-surveys.md +++ b/content/en/blog/analyse-two-completely-different-surveys.md @@ -2,6 +2,7 @@ title: "Mastering Survey Data Analysis with Harmony - A Smart Guide" description: "Unlock the secrets of survey data with Harmony. Learn how to analyse and harmonise data for insightful decisions in our comprehensive guide." date: 2024-04-09 +categories: ["data"] image: "/images/world.png" --- diff --git a/content/en/blog/back-to-the-future-retrospectively-harmonizing-questionnaire-data.md b/content/en/blog/back-to-the-future-retrospectively-harmonizing-questionnaire-data.md index c42e14d6..5c259d6c 100644 --- a/content/en/blog/back-to-the-future-retrospectively-harmonizing-questionnaire-data.md +++ b/content/en/blog/back-to-the-future-retrospectively-harmonizing-questionnaire-data.md @@ -2,6 +2,7 @@ title: Back To The Future – Retrospectively Harmonizing Questionnaire Data description: Now more than ever, the international research community are keen to determine whether their findings replicate across different contexts. For ... date: 2022-11-10 +categories: ["psychology"] image: /images/blog/to-do-g9c7aee9ed_1920-1536x974.jpg aliases: "/blog/back-to-the-future-retrospectively-harmonizing-questionnaire-data" --- diff --git a/content/en/blog/combining-multiple-survey-sources.md b/content/en/blog/combining-multiple-survey-sources.md index 27a94961..8c71fd52 100644 --- a/content/en/blog/combining-multiple-survey-sources.md +++ b/content/en/blog/combining-multiple-survey-sources.md @@ -3,6 +3,7 @@ title: "Combining Multiple Survey Sources - Best Practices" Discription: "In the ever-evolving landscape of data-driven decision-making, the art of harmonizing content from multiple survey sources has become increasingly vital. This blog post delves into the best practices for combining diverse survey datasets, ensuring reliability, validity, and insightful analysis. Drawing on established research methodologies, we aim to guide readers through the intricate process of data integration." date: 2024-02-27 author: "Vidhya Sudani" +categories: ["data"] image: "/images/12- Combining multiple survey sorces - the best practices list.svg" --- diff --git a/content/en/blog/community.md b/content/en/blog/community.md index 1897ad98..532f9b6b 100644 --- a/content/en/blog/community.md +++ b/content/en/blog/community.md @@ -2,6 +2,7 @@ title: Community description: Join the Harmony community! date: 2024-01-25 +categories: ["community"] image: /images/discord.jpg --- diff --git a/content/en/blog/contribute-open-source-project.md b/content/en/blog/contribute-open-source-project.md index c0975cad..58965007 100644 --- a/content/en/blog/contribute-open-source-project.md +++ b/content/en/blog/contribute-open-source-project.md @@ -2,6 +2,7 @@ title: How can I contribute to an open source project? description: Semantic text matching is a task in natural language processing involving estimating the semantic similarity between two texts. For exam... date: 2024-01-06 +categories: ["development"] image: /images/coder.png --- diff --git a/content/en/blog/contributing.md b/content/en/blog/contributing.md index 8eb40a9f..83a4912a 100644 --- a/content/en/blog/contributing.md +++ b/content/en/blog/contributing.md @@ -2,6 +2,7 @@ title: Contributing to Harmony description: Want to help develop Harmony? date: 2023-12-22 +categories: ["development"] image: /images/join-open-source-project.png --- diff --git a/content/en/blog/data-harmonisation-examples-business.md b/content/en/blog/data-harmonisation-examples-business.md index aefc7c26..b0f5d154 100644 --- a/content/en/blog/data-harmonisation-examples-business.md +++ b/content/en/blog/data-harmonisation-examples-business.md @@ -2,6 +2,7 @@ title: "10 Data Harmonisation Examples That Move Businesses and Organisations Forward" description: "Unlock Data Harmonisation with Harmony: Transform Your Research & Analysis. Explore Harmony for seamless data harmonisation. Dive into our guide on using this tool to enhance research, attract collaborations, and drive insights." date: 2024-02-27 +categories: ["data"] image: "/images/01- X Data harmonization examples that move businessess and organizations forward.svg" --- diff --git a/content/en/blog/data-harmonisation-healthcare.md b/content/en/blog/data-harmonisation-healthcare.md index bd2ac4ac..399ab201 100644 --- a/content/en/blog/data-harmonisation-healthcare.md +++ b/content/en/blog/data-harmonisation-healthcare.md @@ -3,6 +3,7 @@ title: "Data Harmonisation in Healthcare: From Public to Private Records" Discription: "Data harmonisation in healthcare is a critical process aimed at integrating disparate data sources to streamline patient care and enhance research quality. This blog explores the essence, methodologies, impacts, and initiatives surrounding data harmonisation, highlighting its pivotal role in the healthcare sector." date: 2024-03-19 author: "Vidhya Sudani" +categories: ["data"] image: "/images/20- Data harmonization in healthcare - from public to private records.svg" --- diff --git a/content/en/blog/data-harmonisation-marketing.md b/content/en/blog/data-harmonisation-marketing.md index ce826653..51a711b3 100644 --- a/content/en/blog/data-harmonisation-marketing.md +++ b/content/en/blog/data-harmonisation-marketing.md @@ -3,6 +3,7 @@ title: "Data Harmonisation for Marketing Success: Strategies and Insights" Discription: "In an era where data is the new oil, marketing strategies are increasingly fueled by the accurate, harmonious integration of diverse data sources. This blog post explores the pivotal strategies for data harmonisation in marketing to improving equity through data insights." date: 2024-03-26 author: "Vidhya Sudani" +categories: ["data"] image: "/images/21- Data harmonization for marketing purposes - the strategies for success.svg" --- diff --git a/content/en/blog/data-harmonisation-steps-techniques-best-practices.md b/content/en/blog/data-harmonisation-steps-techniques-best-practices.md index a8a534aa..639b8cab 100644 --- a/content/en/blog/data-harmonisation-steps-techniques-best-practices.md +++ b/content/en/blog/data-harmonisation-steps-techniques-best-practices.md @@ -3,6 +3,7 @@ title: "Data Harmonisation: Steps, Techniques, and Best Practices" Discription: "Data harmonisation is a critical process in data management that involves combining data from different sources, ensuring consistency, and improving data quality for better analysis and decision-making. This comprehensive guide outlines the steps, techniques, and best practices for effective data harmonisation." date: 2024-02-06 author: "Vidhya Sudani" +categories: ["data"] image: "/images/04- Data harmonization steps, techniques and best practices.svg" --- diff --git a/content/en/blog/data-harmonisation-tools-frameworks.md b/content/en/blog/data-harmonisation-tools-frameworks.md index 45e577de..9939dc38 100644 --- a/content/en/blog/data-harmonisation-tools-frameworks.md +++ b/content/en/blog/data-harmonisation-tools-frameworks.md @@ -2,6 +2,7 @@ title: "Data harmonisation tools and frameworks in 2024" description: "Harmonised data refers to the standardisation of disparate data formats, schemas, and structures across different sources to enable seamless integration and analysis. It's crucial for enhancing data quality, facilitating integration, improving decision-making, and increasing operational efficiency." date: 2024-04-02 +categories: ["data"] image: "/images/06- Data harmonisation tools and frameworks in 2024.svg" url: "/data-harmonisation-tools-frameworks" --- diff --git a/content/en/blog/data-harmonisation.md b/content/en/blog/data-harmonisation.md index 37c3a742..464a490d 100644 --- a/content/en/blog/data-harmonisation.md +++ b/content/en/blog/data-harmonisation.md @@ -2,6 +2,7 @@ title: "What is data harmonisation - and why it matters in 2024" description: While this data can be a valuable asset, it often comes in different formats, structures, and standards, making it challenging to analyze, share, and extract meaningful insights. This is where the concept of **data harmonisation** comes into play. In this article, we will explore what data harmonisation is, why it is important, and how it can benefit organizations and society as a whole. date: 2024-01-23 +categories: ["data"] image: "/images/02- What is data harmonization - and why it matters in 2024.svg" url: /data-harmonisation-unifying-data-for-deeper-insights/ --- diff --git a/content/en/blog/data-standardisation-vs-harmonisation.md b/content/en/blog/data-standardisation-vs-harmonisation.md index 1f523e0c..fa983c49 100644 --- a/content/en/blog/data-standardisation-vs-harmonisation.md +++ b/content/en/blog/data-standardisation-vs-harmonisation.md @@ -3,6 +3,7 @@ title: "Data Standardisation vs Harmonisation - The Right Things at the Right Ti description: "In an era where data drives decisions in business and science, understanding the nuances of data standardisation and harmonisation is crucial. This post explores these concepts, particularly highlighting their significance in the context of the Harmony tool." date: 2024-01-30 author: "Vidhya Sudani" +categories: ["data"] image: "/images/03- Data standartisation vs harmonisation - the right things at the right times.svg" --- diff --git a/content/en/blog/developer-guide.md b/content/en/blog/developer-guide.md index 5fc3d436..0f6a90b7 100644 --- a/content/en/blog/developer-guide.md +++ b/content/en/blog/developer-guide.md @@ -2,6 +2,7 @@ title: Developer guide description: Want to help develop Harmony? date: 2024-02-29 +categories: ["development"] image: "images/08- Questionnaire data analysis the smart way.svg" --- diff --git a/content/en/blog/file-formatting-guidance.md b/content/en/blog/file-formatting-guidance.md index 64dce289..46f60960 100644 --- a/content/en/blog/file-formatting-guidance.md +++ b/content/en/blog/file-formatting-guidance.md @@ -2,6 +2,7 @@ title: Formatting help description: How to fix problems in Harmony date: 2023-12-07 +categories: ["users"] image: /images/formatting-min.jpg --- diff --git a/content/en/blog/harmonised-data.md b/content/en/blog/harmonised-data.md index ff9006cc..5648871f 100644 --- a/content/en/blog/harmonised-data.md +++ b/content/en/blog/harmonised-data.md @@ -2,6 +2,7 @@ title: "Harmonised Data" description: "Harmonised data refers to the standardisation of disparate data formats, schemas, and structures across different sources to enable seamless integration and analysis. It's crucial for enhancing data quality, facilitating integration, improving decision-making, and increasing operational efficiency." date: 2024-03-26 +categories: ["data"] image: "/images/05- What is truly harmonized data - the practical overview.svg" --- diff --git a/content/en/blog/harmony-cran.md b/content/en/blog/harmony-cran.md index fac42e53..800c14af 100644 --- a/content/en/blog/harmony-cran.md +++ b/content/en/blog/harmony-cran.md @@ -2,6 +2,7 @@ title: "Harmony: Natural Language Processing Tool for Item Harmonisation is now on CRAN" description: Semantic text matching is a task in natural language processing involving estimating the semantic similarity between two texts date: 2023-09-06 +categories: ["development"] image: "https://raw.githubusercontent.com/harmonydata/.github/main/profile/harmony_cran.gif" aliases: "/blog/harmony-cran" --- diff --git a/content/en/blog/harmony-going-forward-5-things-implementation-science-has-taught-us-to-focus-on.md b/content/en/blog/harmony-going-forward-5-things-implementation-science-has-taught-us-to-focus-on.md index 26dcce72..5d1e44be 100644 --- a/content/en/blog/harmony-going-forward-5-things-implementation-science-has-taught-us-to-focus-on.md +++ b/content/en/blog/harmony-going-forward-5-things-implementation-science-has-taught-us-to-focus-on.md @@ -2,6 +2,7 @@ title: Harmony Going Forward description: Yesterday the Harmony team received the wonderful news that we are given the chance to continue working on Harmony for another six months, after which we c... date: 2023-02-09 +categories: ["harmony"] image: /images/blog/noah-buscher-x8ZStukS2PM-unsplash-1536x880.jpg aliases: - /blog/harmony-going-forward/ diff --git a/content/en/blog/harmony-multilingual.md b/content/en/blog/harmony-multilingual.md index 80802d17..8b314039 100644 --- a/content/en/blog/harmony-multilingual.md +++ b/content/en/blog/harmony-multilingual.md @@ -2,6 +2,7 @@ title: Harmony supports over 8 languages! description: How we are handling multiple languages in the Harmony project date: 2023-08-19 +categories: ["nlp"] image: /images/multilingual.png aliases: - /harmony-supports-8-languages diff --git a/content/en/blog/harmony-questionnaire.md b/content/en/blog/harmony-questionnaire.md index ae5828dd..82d559bd 100644 --- a/content/en/blog/harmony-questionnaire.md +++ b/content/en/blog/harmony-questionnaire.md @@ -2,6 +2,7 @@ title: Harmony Questionnaire description: date: 2022-11-10 +categories: ["harmony"] image: /images/blog/pexels-alex-green-5699458-300x200.jpg aliases: "/blog/harmony-questionnaire/" --- diff --git a/content/en/blog/harmony-r.md b/content/en/blog/harmony-r.md index 70d371df..8e1ac71c 100644 --- a/content/en/blog/harmony-r.md +++ b/content/en/blog/harmony-r.md @@ -2,6 +2,7 @@ title: Harmony R released! description: You can run Harmony in R date: 2023-08-21 +categories: ["development"] image: /images/r.png --- diff --git a/content/en/blog/harmony-tidal-workshop.md b/content/en/blog/harmony-tidal-workshop.md index 255a11ff..69395882 100644 --- a/content/en/blog/harmony-tidal-workshop.md +++ b/content/en/blog/harmony-tidal-workshop.md @@ -2,6 +2,7 @@ title: Harmony and TIDAL workshop description: Collaborating with another team in the Wellcome Trust Data Prize date: 2023-08-18 +categories: ["harmony"] image: /images/harmony-tidal-workshop.jpg --- diff --git a/content/en/blog/harmony_r_example.md b/content/en/blog/harmony_r_example.md index c76e69a4..13501102 100644 --- a/content/en/blog/harmony_r_example.md +++ b/content/en/blog/harmony_r_example.md @@ -2,6 +2,7 @@ title: "Harmony R notebook R markdown example" description: R notebook demo of Harmony date: 2023-10-01 +categories: ["development"] image: "/images/r_studio_screenshot.png" --- diff --git a/content/en/blog/harmony_social_media.md b/content/en/blog/harmony_social_media.md index efcd9439..2381b9d7 100644 --- a/content/en/blog/harmony_social_media.md +++ b/content/en/blog/harmony_social_media.md @@ -2,6 +2,7 @@ title: Share your harmonisations on social media! description: Harmony lets you export to other platforms such as Twitter, LinkedIn. date: 2023-08-20 +categories: ["harmony"] image: /images/share_dialog.png --- diff --git a/content/en/blog/harmony_update.md b/content/en/blog/harmony_update.md index 1d967d08..de05f163 100644 --- a/content/en/blog/harmony_update.md +++ b/content/en/blog/harmony_update.md @@ -2,6 +2,7 @@ title: "Harmony update: new features and bug fixes" description: "Harmony update: new features and bug fixes" date: 2023-10-04 +categories: ["development"] image: "/images/blog/Screenshot-from-2023-07-12-21-28-48-1536x933.png" --- diff --git a/content/en/blog/how-does-harmony-work.md b/content/en/blog/how-does-harmony-work.md index bde95cad..ea538e5b 100644 --- a/content/en/blog/how-does-harmony-work.md +++ b/content/en/blog/how-does-harmony-work.md @@ -2,6 +2,7 @@ title: How Does Harmony Work? description: When you input two questionnaires into Harmony, such as the GAD-7 and Beck’s Anxiety Inventory, Harmony is able to match similar quest... date: 2022-11-03 +categories: ["nlp"] image: /images/blog/harmony-1.png aliases: "/blog/how-does-harmony-work" --- diff --git a/content/en/blog/how-far-can-we-go-with-harmony-testing-on-kufungisisa-a-cultural-concept-of-distress-from-zimbabwe.md b/content/en/blog/how-far-can-we-go-with-harmony-testing-on-kufungisisa-a-cultural-concept-of-distress-from-zimbabwe.md index 78c9f9bb..e40f8a07 100644 --- a/content/en/blog/how-far-can-we-go-with-harmony-testing-on-kufungisisa-a-cultural-concept-of-distress-from-zimbabwe.md +++ b/content/en/blog/how-far-can-we-go-with-harmony-testing-on-kufungisisa-a-cultural-concept-of-distress-from-zimbabwe.md @@ -2,6 +2,7 @@ title: How Far Can We Go With Harmony? Testing On Kufungisisa, A Cultural Concept Of Distress From Zimbabwe description: Many psychologists believe that mental illnesses can vary across cultures. In 1904, Emil Kraepelin initiated the field of comparative psychiatry after studying mental health disorders in Java.... date: 2023-04-02 +categories: ["nlp"] image: /images/blog/ccd.png aliases: ['/blog/how-far-can-we-go-with-harmony-testing-on-kufungisisa-a-cultural-concept-of-distress-from-zimbabwe'] --- diff --git a/content/en/blog/ideas.md b/content/en/blog/ideas.md index 5915e682..3112d417 100644 --- a/content/en/blog/ideas.md +++ b/content/en/blog/ideas.md @@ -1,6 +1,7 @@ --- title: "Ideas" date: 2024-02-04 +categories: ["development"] image: "/images/world.png" --- diff --git a/content/en/blog/kaggle.md b/content/en/blog/kaggle.md index e4960fe4..4c31e951 100644 --- a/content/en/blog/kaggle.md +++ b/content/en/blog/kaggle.md @@ -1,6 +1,7 @@ --- title: "Harmony on Kaggle" date: 2024-02-01 +categories: ["development"] image: "/images/kaggle.jpg" aliases: "/kaggle" --- diff --git a/content/en/blog/marketing.md b/content/en/blog/marketing.md index 5e4a4d6f..c8f77145 100644 --- a/content/en/blog/marketing.md +++ b/content/en/blog/marketing.md @@ -2,6 +2,7 @@ title: The importance of marketing for open science description: How we are approaching marketing in the Harmony project date: 2023-01-15 +categories: ["harmony"] image: /images/blog/marketing.jpg aliases: - "/blog/marketing/" diff --git a/content/en/blog/measuring-the-performance-of-nlp-algorithms.md b/content/en/blog/measuring-the-performance-of-nlp-algorithms.md index ad41d2c0..98c14952 100644 --- a/content/en/blog/measuring-the-performance-of-nlp-algorithms.md +++ b/content/en/blog/measuring-the-performance-of-nlp-algorithms.md @@ -2,6 +2,7 @@ title: Measuring The Performance Of NLP Algorithms description: "Harmony was able to reconstruct the matches of the questionnaire harmonisation tool developed by McElroy et al in 2020 with the following AUC scores: chil..." date: 2023-02-25 +categories: ["nlp"] image: /images/blog/roc.png aliases: "/blog/measuring-the-performance-of-nlp-algorithms/" --- diff --git a/content/en/blog/orientation-event.md b/content/en/blog/orientation-event.md index b63cf8ed..77bd008c 100644 --- a/content/en/blog/orientation-event.md +++ b/content/en/blog/orientation-event.md @@ -1,6 +1,7 @@ --- title: Harmony Orientation Session date: 2024-02-09 +categories: ["harmony"] image: /images/discord2.jpg --- diff --git a/content/en/blog/ppie-for-secondary-data-analysis.md b/content/en/blog/ppie-for-secondary-data-analysis.md index c0bfdc3c..cf61cb0e 100644 --- a/content/en/blog/ppie-for-secondary-data-analysis.md +++ b/content/en/blog/ppie-for-secondary-data-analysis.md @@ -2,6 +2,7 @@ title: PPIE For Secondary Data Analysis description: "Harmony was able to reconstruct the matches of the questionnaire harmonisation tool developed by McElroy et al in 2020 with the following AUC scores: chil..." date: 2022-11-09 +categories: ["psychology"] image: /images/blog/joanna-kosinska-1_CMoFsPfso-unsplash-1536x1025.jpg --- diff --git a/content/en/blog/press.md b/content/en/blog/press.md index ec939eee..f94a7738 100644 --- a/content/en/blog/press.md +++ b/content/en/blog/press.md @@ -2,6 +2,7 @@ title: "News coverage" description: Any news coverage about Harmony date: 2024-02-21 +categories: ["harmony"] image: "/images/world.png" --- diff --git a/content/en/blog/radio-podcast-about-wellcome-data-prize.md b/content/en/blog/radio-podcast-about-wellcome-data-prize.md index 588b1a10..c86d717f 100644 --- a/content/en/blog/radio-podcast-about-wellcome-data-prize.md +++ b/content/en/blog/radio-podcast-about-wellcome-data-prize.md @@ -2,6 +2,7 @@ title: Radio Podcast About Wellcome Data Prize description: Wellcome Data Prize Featured on Smile 90.4FM date: 2023-02-11 +categories: ["harmony"] image: /images/blog/pexels-scott-webb-29049.jpg --- diff --git a/content/en/blog/releasing-harmony-api.md b/content/en/blog/releasing-harmony-api.md index 5746db9f..59e9730a 100644 --- a/content/en/blog/releasing-harmony-api.md +++ b/content/en/blog/releasing-harmony-api.md @@ -2,6 +2,7 @@ title: Releasing Harmony API description: Semantic text matching is a task in natural language processing involving estimating the semantic similarity between two texts. For exam... date: 2023-06-07 +categories: ["development"] image: /images/blog/harmony_api.png aliases: "/blog/releasing-harmony-api/" --- diff --git a/content/en/blog/running-harmony-in-your-browser-with-no-internet-connection.md b/content/en/blog/running-harmony-in-your-browser-with-no-internet-connection.md index 76fc344d..86e1b161 100644 --- a/content/en/blog/running-harmony-in-your-browser-with-no-internet-connection.md +++ b/content/en/blog/running-harmony-in-your-browser-with-no-internet-connection.md @@ -2,6 +2,7 @@ title: Running Harmony In Your Browser With No Internet Connection description: Here’s a quick start guide to running Harmony. These instructions are for the complete version of Harmony including the graphical browser-based tool which is available onlin... date: 2023-07-12 +categories: ["development"] image: /images/blog/Screenshot-from-2023-07-12-21-28-48-1536x933.png aliases: "/blog/running-harmony-in-your-browser-with-no-internet-connection" --- diff --git a/content/en/blog/semantic-text-matching-with-deep-learning-transformer-models.md b/content/en/blog/semantic-text-matching-with-deep-learning-transformer-models.md index 2b0dc8c5..8b476485 100644 --- a/content/en/blog/semantic-text-matching-with-deep-learning-transformer-models.md +++ b/content/en/blog/semantic-text-matching-with-deep-learning-transformer-models.md @@ -2,6 +2,7 @@ title: Semantic Text Matching With Deep Learning Transformer Models description: Semantic text matching is a task in natural language processing involving estimating the semantic similarity between two texts. For exam... date: 2023-02-08 +categories: ["nlp"] image: /images/blog/gad7-becks.jpg aliases: ['/blog/semantic-text-matching-with-deep-learning-transformer-models'] --- diff --git a/content/en/blog/sign-up-to-test-harmony.md b/content/en/blog/sign-up-to-test-harmony.md index 31d71352..ee9e2a45 100644 --- a/content/en/blog/sign-up-to-test-harmony.md +++ b/content/en/blog/sign-up-to-test-harmony.md @@ -2,6 +2,7 @@ title: Sign Up To Test Harmony description: We are running workshops to test Harmony – see the signup link here. date: 2023-06-28 +categories: ["harmony"] image: /images/blog/Social-media-posts_LinkedIn_06.png --- diff --git a/content/en/blog/sustainability.md b/content/en/blog/sustainability.md index 765f8ae6..4f4bf9ba 100644 --- a/content/en/blog/sustainability.md +++ b/content/en/blog/sustainability.md @@ -2,6 +2,7 @@ title: Making Harmony sustainable long-term description: How we can make sure the Harmony project survives after the Wellcome Trust Mental Health Data Prize date: 2023-11-01 +categories: ["psychology"] image: /images/blog/sustainability.png aliases: ["/blog/sustainability"] --- diff --git a/content/en/blog/tabulate-questionnaire-survey-result-data.md b/content/en/blog/tabulate-questionnaire-survey-result-data.md index eadf147f..9f430ef4 100644 --- a/content/en/blog/tabulate-questionnaire-survey-result-data.md +++ b/content/en/blog/tabulate-questionnaire-survey-result-data.md @@ -3,6 +3,7 @@ title: "Tabulating Questionnaire and Survey Result Data" Discription: "Tabulating questionnaires and survey results is an essential skill for researchers, marketers, educators, and many professionals. This process involves organizing and summarizing the collected data to make it understandable and actionable. This article will guide you through the steps of tabulating survey results, including some best practices and a practical exercise to help solidify your understanding." date: 2024-03-05 author: "Vidhya Sudani" +categories: ["data"] image: "/images/14- How to tabulate questionnaires and survey result data.svg" --- diff --git a/content/en/blog/tracker.md b/content/en/blog/tracker.md index bc1102bb..7bb5cccc 100644 --- a/content/en/blog/tracker.md +++ b/content/en/blog/tracker.md @@ -2,6 +2,7 @@ title: Harmony issue tracker description: Want to track issues on Harmony's development? date: 2024-03-01 +categories: ["development"] image: "images/08- Questionnaire data analysis the smart way.svg" --- diff --git a/content/en/blog/troubleshooting.md b/content/en/blog/troubleshooting.md index eba0e48d..463bc86f 100644 --- a/content/en/blog/troubleshooting.md +++ b/content/en/blog/troubleshooting.md @@ -2,6 +2,7 @@ title: Troubleshooting Harmony description: How to fix problems in Harmony date: 2023-12-07 +categories: ["harmony"] image: /images/troubleshooting.png --- diff --git a/content/en/blog/what-features-would-you-like-to-see-in-harmony.md b/content/en/blog/what-features-would-you-like-to-see-in-harmony.md index c10c3157..82aa1cf8 100644 --- a/content/en/blog/what-features-would-you-like-to-see-in-harmony.md +++ b/content/en/blog/what-features-would-you-like-to-see-in-harmony.md @@ -2,6 +2,7 @@ title: What features would you like to see in Harmony? description: Click here to view other people’s responses. date: 2024-02-11 +categories: ["psychology"] image: /images/blog/how_can_harmony_help_you.png --- diff --git a/content/en/blog/what-is-truly-harmonised-data.md b/content/en/blog/what-is-truly-harmonised-data.md index e3f56768..ee2554ef 100644 --- a/content/en/blog/what-is-truly-harmonised-data.md +++ b/content/en/blog/what-is-truly-harmonised-data.md @@ -3,6 +3,7 @@ title: "What is Truly Harmonized Data: A Practical Overview" description: "Harmonized data refers to the standardization of disparate data formats, schemas, and structures across different sources to enable seamless integration and analysis. It's crucial for enhancing data quality, facilitating integration, improving decision-making, and increasing operational efficiency." date: 2024-02-13 author: "Vidhya Sudani" +categories: ["data"] image: "/images/05- What is truly harmonized data - the practical overview.svg" --- From 64ec163b894f6480fe60b59af54830111b7b8fea Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Sat, 2 Mar 2024 07:50:20 +0000 Subject: [PATCH 09/10] new blog posts --- .../blog/how-to-harmonise-questionnaires.md | 146 ++++++++++++++++++ content/en/blog/master-data-harmonisation.md | 139 +++++++++++++++++ 2 files changed, 285 insertions(+) create mode 100644 content/en/blog/how-to-harmonise-questionnaires.md create mode 100644 content/en/blog/master-data-harmonisation.md diff --git a/content/en/blog/how-to-harmonise-questionnaires.md b/content/en/blog/how-to-harmonise-questionnaires.md new file mode 100644 index 00000000..e4fe20a3 --- /dev/null +++ b/content/en/blog/how-to-harmonise-questionnaires.md @@ -0,0 +1,146 @@ +--- +title: "Harmonising Questionnaire Data: 10+1 Practical Steps for Enhanced Consistency" +description: "Discover expert strategies for questionnaire harmonisation with Harmony. Learn 10+1 practical steps for improved data consistency and analysis." +date: 2024-04-16 +categories: ["data"] +/image: "/images/10- How to harmonize questionnaires - X practical steps.svg" +--- + +# **How to Harmonise Questionnaires - 10 Practical Steps (+ 1 Bonus Tip)** + +Data privacy is a big challenge today. It's all about what we share and what we don't. Zoher Karu said it well: “One of the biggest challenges is around data privacy and what is shared versus what is not shared. And my perspective on that is consumers are willing to share if there’s value returned. One-way sharing is not going to fly anymore. So how do we protect and how do we harness that information and become a partner with our consumers rather than just a vendor for them?” + +This quote really highlights the importance of effective questionnaires. They're not just about gathering data – they're about building trust and delivering value to those who share their information with us. But there's a catch – the data we collect from these questionnaires needs to be well organised and analysed. + +This is where the challenge of non-harmonised data comes in, and it truly can be a problem when you have differently formatted surveys with different questions and scales. The questionnaires might not even be in the same language. Analysing the data straight-up is like trying to complete a jigsaw puzzle where the pieces are from different sets (it’s quite literally impossible). So, we need to get our questionnaires to work in harmony with each other. + +In this guide, you'll discover 10 practical steps – and we've thrown in an extra one for good measure – to assist you in the harmonisation of questionnaire data. These data harmonisation steps are designed to make the process smoother, so that your collected data is not just abundant but also rich in insights and meaning. + +## **1\. Define Clear Objectives** + +The first and foremost step in harmonising questionnaires is to define clear objectives. What do you want to achieve with your questionnaire? + +Understanding the purpose behind your data collection is key. No matter if it's gathering customer feedback, conducting market research, or measuring employee satisfaction, your objectives will guide every aspect of your questionnaire design. + +Clear goals guarantee that each question serves a specific purpose and contributes to the overall aim of your survey. This focus prevents the inclusion of irrelevant questions and helps maintain the respondents' engagement – resulting in higher response rates and more accurate data. + +(Of course, this step is only possible before collecting the actual data. If you are already dealing with data from different questionnaires that don’t match, you might want to skip to step 6.) + +## **2\. Standardize Question Formats** + +Consistency is key when it comes to questionnaire design. Standardizing question formats across your surveys not only maintains a professional appearance but also enhances the quality of the data collected. + +By using a consistent format, you make it easier for respondents to understand and answer the questions, reducing the likelihood of confusion or misinterpretation. This uniformity also facilitates easier data analysis and comparison, especially when dealing with multiple questionnaires over time or across different segments. S + +Standardization can include aspects like using the same scale for rating questions (e.g., 1-5), maintaining a consistent order (e.g., always starting with demographic questions), and using a uniform language style. This way your data is reliable, comparable, and easier to interpret, which leads to more accurate insights and informed decision-making. + +## **3\. Ensure Scalability** + +Designing questionnaires that are scalable across various contexts or projects is essential. Scalability helps make sure that your questionnaire remains relevant and effective, regardless of the scope or size of your project. To achieve this, do the following: + +- **Flexibility:** Design questions that are adaptable to different situations. Avoid overly specific questions that might not apply in varied contexts. +- **Modularity:** Structure your questionnaire in sections that can be easily added or removed depending on the project's needs. +- **Broad Applicability:** Create and ask questions that are applicable to a wide range of respondents for the collection of meaningful data across different groups. + +A scalable questionnaire is not just about reaching a larger audience – it’s about maintaining consistency and relevance in diverse scenarios. + +## **4\. Incorporate Logical Flow** + +A logical sequence of questions is fundamental for keeping respondents engaged and for collecting high-quality data. What do you need to do to achieve a logical flow? + +- Start with general questions and gradually move to more specific ones. This eases respondents into the survey and makes them more comfortable to provide detailed responses later. +- Group related questions together. This helps respondents focus on one topic at a time and provides clearer insights during analysis. +- Use transitional phrases or brief explanations when shifting from one topic to another. This helps respondents understand the change in context and maintains their engagement. + +## **5\. Test and Revise** + +Testing your questionnaire before fully deploying it is a critical step. This process allows you to identify and rectify any issues so that your questionnaire effectively meets its objectives. Here's how to approach this step: + +- **Pilot Testing:** Conduct a pilot test with a small, diverse group of respondents. This helps in identifying unclear questions, technical issues, or any other obstacles that might affect the data collection. +- **Gather Feedback:** Actively seek feedback from your test participants. Ask them about their understanding of the questions, the flow of the questionnaire, and any difficulties they encountered. +- **Analyse Responses:** Look at the test responses critically. Are there patterns of confusion or non-responses in certain sections? This can indicate areas that need refinement. +- **Revise Accordingly:** Use the insights gained from the pilot test to make necessary adjustments. This might involve rephrasing questions, tweaking the order of questions, or altering the format for clarity and ease of response. + +The goal of testing and revising is not just to fix errors, but to refine your questionnaire to make sure it is as effective and user-friendly as possible. + +## **6\. Standardize Question Formats with Harmony's NLP** + +Now, if it is already too late to tweak the questionnaires and you are feeling stranded with a bunch of data that can’t be analysed together, don’t freak out! We have a solution that fixes this problem in a heartbeat: Our tool [Harmony](https://harmonydata.ac.uk/). + +Harmony uses advanced Natural Language Processing (NLP) technologies to assist researchers in the retrospective harmonisation of questionnaire items. It’s a very sophisticated tool that was developed through a collaboration between esteemed institutions such as Ulster University, University College London, and others. It can identify both similarities and differences across a variety of questionnaire items. + +Curious about how the data harmonisation process works? Notably, Harmony doesn't rely on conventional dictionary approaches or word lists. Instead, it utilizes Transformer neural network architectures, which enhance its ability to process and understand the nuances of language in questionnaire contexts. + +If this sounds too technical, here’s how it works in real life: For instance, researchers can upload mental health questionnaires in diverse formats like PDF or Excel. Harmony then analyses these questionnaires to determine which questions are identical, similar in meaning, or even antonyms of each other. This facilitates a more nuanced and accurate harmonisation process. + +## **7\. Achieve Multilingual Harmonisation** + +You might have data from different countries all over the world (which is amazing), but now you don’t know how to analyse this data and make sense of it together. After all, what good is all this diverse data if you can’t get the results and answers you need from it? + +Harmony can help you out again! One of the unique and groundbreaking capabilities of the data harmonisation tool is its proficiency in multilingual data harmonisation. This feature is particularly vital for global research studies that involve data collection across different linguistic groups. Its smart use of natural language processing means it can work with languages far and wide, which guarantees that every piece of data fits perfectly, no matter where it's from. + +Particularly in mental health research, where the subtleties of language matter, the ability to map datasets from various languages can open doors to new insights into issues like social isolation and anxiety. + +So, if you are struggling with the fact that your data is in more than one language, Harmony might be the fastest solution to translate and harmonise your questionnaire data. + +## **8\. Integrate Multifaceted Data Sources** + +So, you have your data but it’s not all in one place, as it should be? + +Harmony is able to merge and manage data from a wide array of sources and formats. This feature simplifies the task of aligning data for research purposes. Given the variety of data collection methods and formats used in modern research, it often happens that your data is all over the place. + +Why is this important? Researchers often struggle with the task of merging data from different studies, because of the unique formats for questionnaires and data recording for each study or questionnaire (like one being in PDF format and another being an Excel sheet). Harmony eradicates this barrier and enables the smooth fusion of different data sources, which is important if you want to conduct a more thorough analysis. + +## **9\. Compare Your Questionnaires from Different Studies** + +Next up, let's talk about comparing questionnaires from different studies. How do you make sense of data from more than one study? You might have guessed it: Harmony has a feature that makes this easy and helpful. This step is great for seeing how your questions stack up against others. It helps you tweak and improve your questionnaire design. + +With Harmony, you can look at the small details and differences in the questions used across various studies. This isn't just about spotting questions that are alike or pretty much the same. It's also about noticing questions that look similar but actually ask for different things or have opposite meanings. Understanding these differences is important for making sure your questionnaire is asking exactly what you intend and works well across different studies. + +This feature is super useful for spotting how certain questions might work (or not work) in different places or among different groups of people. For example, in studies that involve more than one country or community, even small changes in how a question is asked can make a big difference in the answers you get. + +## **10\. Leverage Expertise and Collaborative Support** + +So, you've tackled all the important parts of harmonising data from your questionnaires…but what if you face a particularly tricky challenge in the future or just feel stuck in a certain area? That's where Harmony's community support and expert advice come into play. + +Harmony is not just a tool for harmonising questionnaires, but also a platform for collaboration and expert support. Our innovative project brings together a network of expertise from prestigious institutions and organizations. + +The collaborative nature of Harmony offers researchers access to a wealth of resources and expert insights. Users of Harmony can benefit from the collective knowledge and experience of these organizations, which can be especially valuable in tackling complex challenges in questionnaire harmonisation. + +No matter if your goal is understanding the nuances of language in multilingual questionnaires or if you’re dealing with different cultural contexts in your questionnaire design – the support available through Harmony can be very valuable. + +Being part of this collaborative network also means researchers have opportunities to engage with peers, share findings, and discuss best practices. This can lead to further advancements in the field and promote a more standardized approach to questionnaire harmonisation across various research studies. + +If you’re interested in learning more about the collaborative nature of Harmony and exploring the tool's capabilities firsthand, [read more about Harmony and its contribution to mental health research](https://fastdatascience.com/harmony-wellcome-data-prize/). + +## **Bonus Step: Adopting a Mixed-Methods Approach** + +I know we said there would be 10 practical steps, but here's a bonus tip: Adopt a mixed-methods approach in your questionnaire harmonisation efforts. This technique involves integrating both quantitative and qualitative data and provides you with a more rounded and thorough understanding of the survey responses. + +While quantitative data offers measurable and statistical insights, qualitative data brings in the depth of context and narrative, uncovering nuances that might be overlooked in a purely numeric analysis. This dual approach can significantly enhance the depth and quality of your harmonised questionnaires. + +Harmonising data from questionnaires goes beyond just crunching numbers. It’s your gateway to tapping into the true essence of your research. By following these 10 practical steps, plus our bonus tip, you're well on your way to achieving more accurate, reliable, and valuable insights. + +Remember, each step you take toward better data harmonisation brings you closer to deeper understanding and more impactful results. + +Ready to take your questionnaire analysis to the next level? Maybe you had to skip the first five data harmonisation techniques because you already have your questionnaire data and need it to be harmonised urgently? That’s even more reason to [give Harmony a try](https://harmonydata.ac.uk/app/#/) and see the difference it makes. + +Start harmonising today and turn your data into powerful knowledge. Let's make data work for you! + +**Meta Title:** Harmonising Questionnaire Data: 10+1 Practical Steps for Enhanced Consistency + +**Meta Description:** Discover expert strategies for questionnaire harmonisation with Harmony. Learn 10+1 practical steps for improved data consistency and analysis. + +**Keywords:** + +- data harmonisation +- data harmonisation tool +- harmonise your questionnaire data +- tool for harmonising questionnaires +- multilingual data harmonisation +- harmonising data +- harmonising questionnaires +- data harmonisation techniques +- data harmonisation process +- data harmonisation steps + diff --git a/content/en/blog/master-data-harmonisation.md b/content/en/blog/master-data-harmonisation.md new file mode 100644 index 00000000..743a93c7 --- /dev/null +++ b/content/en/blog/master-data-harmonisation.md @@ -0,0 +1,139 @@ +--- +title: "Master Data Harmonisation: Key to Business Value" +description: "Explore how Master Data Harmonisation unlocks important business valu and enhances data integrity and decision-making efficiency." +date: 2024-04-23 +draft: true +categories: ["data"] +image: "/images/09- Master data harmonisation for business uses.svg" +--- + +# **Unlocking Business Value through Master Data Harmonisation** + +"The world is one big data problem." – Andrew McAfee, Co-director of the MIT Initiative on the Digital Economy. Indeed, data can turn into a significant problem when organizations don't know how to effectively manage and use it. + +Today, businesses deal with a lot of data. If they don't handle this data well, it can become too much to manage. This can cause businesses to miss chances, work less efficiently, and make bad decisions. + +This is why Master Data Management (MDM) is so important. MDM is all about creating, handling, and overseeing master data. Think of it as the foundation that guarantees that data throughout an organization is of high quality, consistent, and trustworthy. + +It's interesting to see how much MDM is growing. This year, the MDM market is expected to be worth [about USD 15.33 billion](https://www.mordorintelligence.com/industry-reports/master-data-management-market#:~:text=The%20Master%20Data%20Management%20Market,period%20%282024%2D2029%29.). And it's not stopping there – it's predicted to jump to around USD 36.48 billion by 2029. + +Why is MDM so important for businesses today? Well, it acts as the core for maintaining excellent data quality, which in turn supports good governance and adherence to regulations. It also paves the way for making informed decisions based on data. + +What do businesses gain when they get MDM right and use the right software? Some have reported a remarkable improvement in their operations, with [efficiency gains of up to 20%](https://www.semarchy.com/blog/master-data-management-statistics-what-you-need-to-know/#footnotes)! + +Incorporating MDM strategies doesn't just help with numbers, though. It transforms the way an organization interacts with its data. And in a world where data is king, having a reliable system to manage this vital resource is truly not just an option but a necessity. + +How does your business handle its master data? Could improving your MDM be the key to unlocking even greater success? + +## **What is Master Data Management (MDM)?** + +Imagine MDM as the process of building and maintaining a trusted source for an organization's essential data. It's a bit like putting together a puzzle, where the pieces are stages like identifying, gathering, transforming, matching, merging, and sharing this master data across the business's data environment. + +The impact of MDM can be seen in several ways. First off, it significantly boosts data quality. This means making sure that data is not only accurate but also consistent wherever it's used in the organization. In today's world, where data guides so many decisions, high-quality data is like gold. It's not just about having the correct figures and facts – it's about being able to trust those numbers wholeheartedly. + +Then there's the aspect of data governance and compliance. Regulations like the GDPR (General Data Protection Regulation) in Europe are a big deal. MDM plays a big role in making sure a business's data practices are compliant. + +But perhaps the most exciting part? MDM leads to smart, effective decision-making. When business leaders have reliable and uniform data at their disposal, they can make choices that not only drive strategic plans but also enhance day-to-day operations. This facet of MDM is really something, as it directly touches on a company's success and its place in the market. + +Isn't it fascinating how managing data well can make such a difference? + +## **The Role of Data Harmonisation in MDM** + +We can’t talk about MDM and not talk about data harmonisation. What is data harmonisation? Think of it as a process that seeks to create order and agreement among different data sets from various sources and systems within an organization. + +Getting a grip on data harmonisation is a must for businesses that want to make the most of what MDM has to offer. But, what does this really mean? + +- **Merging Varied Data Sources:** Picture an organization juggling data from a bunch of places – customer databases, product inventories, supplier details, you name it. These data sets can be as different as apples and oranges in terms of format, structure, and rules. Data harmonisation brings all these diverse data sets into a single, neat format. +- **Boosting Data Quality:** When you use data harmonisation techniques, what you're doing is cutting down on mix-ups and mistakes. It's all about making sure the master data is not just consistent everywhere but also dependable and free from mistakes. This step is key for making smart decisions based on data you can really trust. +- **Meeting Data Governance and Compliance:** Data harmonisation helps be in compliance with data governance standards. Handling data uniformly across the organization helps tick all those legal and ethical boxes. +- **Aiding Decision-Making:** Harmonised data offers a clearer, more complete picture of information. This clarity is vital for making strategic decisions. It helps businesses get accurate insights and analytics, leading to smarter, more effective strategies. +- **Simplifying Business Processes:** Last but not least, data harmonisation makes life easier in various business operations. It gets rid of the need to manually match up data, lowers the chance of errors, and increases operational efficiency. + +## **Harmonisation Across Various Data Sources – Not Just SAP:** + +When we talk about data harmonisation in the context of Master Data Management (MDM), it's not just a SAP story. It's about bringing together and syncing up data from all sorts of places. This involves making sure data is standardized, clean, and combined in a way that makes it consistent, accurate, and useful, no matter where you look. + +In the world we live in today, organizations deal with masses of data from a bunch of different places. We're talking about CRM systems like Salesforce, financial tools like QuickBooks, and even unique systems built in-house. Data harmonisation can link these varied data worlds together for a more complete picture of info. + +Here's the main goal: achieving what's known as a “single version of the truth.” This means, no matter if the data comes from SAP or some other system, it's tweaked to be universally understood and usable across the whole organization. This lets businesses make smarter choices, boost how well they operate, and even make their customers happier. + +Imagine a scenario like this: You've got customer info in a CRM system and transaction details in an ERP system, like SAP. They might speak different languages, so to speak. This can be a big problem if you don’t know how to manage these different types of raw data to get meaningful results from your analysis. Harmonisation functions like a translator here – it helps make sure that these different data sets are speaking the same language and give a true and united view of customer interactions and transactions everywhere. + +## **Using Harmonised Master Data for Business Value** + +Harmonised master data is a powerful tool that can significantly influence and improve business decisions. It might not be the first thing that comes to mind when you think about strategies to grow your business, but really, it should be up there. + +Why? By providing a consistent, unified view of critical data elements like customers, products, suppliers, and employees, master data enables organisations to make informed, strategic decisions that drive business growth. Here are some more benefits so you can get a better idea of all the benefits: + +- **360-Degree Customer Insights:** Master data paints a complete picture of your customers. To be successful, you need to know your target customer’s buying habits and preferences, their interests and their concerns. This knowledge leads to marketing magic, standout customer service, and, most importantly, loyal customers. +- **Streamlined Operations:** Imagine you could have all your data in one place, error-free. Operations would become smoother and more efficient – saving both time and money. +- **Informed Decisions:** With up-to-date, accurate data, forecasting and planning could become easier than ever. You can now easily identify trends, opportunities, and even risks. +- **Boosted Productivity:** Say goodbye to data silos and duplications! With harmonised master data, accessing reliable information is quick and easy, skyrocketing productivity. + +Interested in learning how master data can revolutionize your business? Check out our blog or service page on Harmony’s site for deeper insights. + +## **What is Data Harmonisation in Mental Health Research?** + +Ever wondered how mental health research makes sense of so much varied data – and how you can do the same for your research or business data? You start out with data that is all over the place: different languages, different formats and questions and scales. How do you get this data to reveal the answers you're looking for? The answer lies – once again – in data harmonisation. + +You might be asking, “Isn’t that a long and tedious process? Do I need to harmonise my data manually?” The data harmonisation process can seem quite scary and overwhelming, as it traditionally requires extensive manual effort and meticulous attention to detail. + +Don’t worry! [Harmony](https://harmonydata.ac.uk/) simplifies this process. Using advanced Natural Language Processing (NLP) Harmony aligns questionnaire items from various countries (such as the GAD-7 anxiety questionnaire) and breaks down language barriers with ease. This smart fix means you no longer have to dread the data harmonisation process. + +And data harmonisation isn't just about neat data. It's important for gaining clearer, deeper insights into mental health trends or business insights. Harmony's platform is a window into understanding mental health on a grander scale and enables researchers to discover patterns and insights that could revolutionize mental health understanding and treatments. + +Curious to learn more? Explore more about data harmonisation and how it has been able to [revolutionise data collection and analysis](https://harmonydata.ac.uk/ada/) in real success stories. + +## **How to Use NLP for Questionnaire Harmonisation** + +Let’s talk a little bit about Natural Language Processing. NLP is one of the essential technological advancements in data harmonisation, and Harmony utilises this technology to revolutionise how questionnaire data is harmonised. + +How so? NLP enables Harmony to process and compare textual data from various questionnaires, identifying similarities, differences, and even nuanced relationships between items. + +The data harmonisation process with NLP involves several steps: + +1. You upload your questionnaire data (in formats like PDF or Excel) to the Harmony platform. +2. Harmony's NLP algorithms then analyse the text and map out similarities and differences across various questionnaires. +3. The system can identify identical questions, those with similar meanings, or even contrasting items. Thereby it creates a complete network graph for analysis. + +This capability is particularly helpful and important in multilingual settings. For instance, Harmony can map the GAD-7 questionnaire used in the UK with its Brazilian Portuguese counterpart – for accuracy and relevancy in cross-cultural research. + +To learn how to integrate this powerful tool into your research workflow, read through our [Frequently Asked Questions](https://harmonydata.ac.uk/frequently-asked-questions/) or just [give it a try](https://harmonydata.ac.uk/app/#/) yourself. + +## **Harmony's Role in Master Data Management (MDM)** + +We’ve already given you an idea of how Harmony can help you make sense of your data. Think of Harmony in the world of Master Data Management (MDM) not just as one of many data harmonisation tools for aligning data, but as a fresh approach to handling and leveraging data in mental health research. + +In MDM, the goal is to craft a singular, go-to source for master data that’s consistently used – whether in an organization or a research project. Harmony steps up to this challenge by not only aligning but also standardizing questionnaire data from different studies. This transforms it into a dependable resource for deeper analysis. + +To understand more about how Harmony integrates with other initiatives and contributes to MDM best practices, find answers to your questions in our explanation [videos](https://harmonydata.ac.uk/videos/) or in our [blog](https://harmonydata.ac.uk/blog/). + +## **Mastering the Art of Master Data Management** + +Carly Fiorina once said, "The goal is to turn data into information, and information into insight." This idea is especially true when it comes to Master Data Management. + +But what does MDM really do? Now you know that it transforms raw data into a powerful tool that pushes companies toward greater growth, smarter efficiency, and a sharper edge in the competitive arena. + +By using master data, companies can get a clearer picture of their customers, streamline their operations, and make choices based on solid information. They can also handle compliance and risks more efficiently, and see a noticeable uptick in productivity. + +So, do you feel confident to tap into the full potential of your data with MDM and data harmonisation? [Get in touch with us](https://harmonydata.ac.uk/contact/) and start your journey toward data mastery and business transformation. + +Let us be the ones to help you turn your data into insights and your insights into the success stories of your business. Isn't it time to see what your data can really do? + +**Meta Title:** Master Data Harmonisation: Key to Business Value + +**Meta Description:** Explore how Master Data Harmonisation unlocks important business valu and enhances data integrity and decision-making efficiency. + +**Keywords:** + +- Master Data Harmonisation +- Data Harmonisation +- What is Master Data Management +- Data Harmonisation Tools +- Data Harmonisation in MDM +- Strategies to grow your business +- Data Harmonisation Techniques +- Data Harmonisation Process +- Data Harmonisation in Mental Health Research +- Harmonised Master Data for Business + From 8cef4d5ed807d5419003f36c3f04d43dff41a3aa Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Sun, 3 Mar 2024 14:27:04 +0000 Subject: [PATCH 10/10] numbering --- content/en/blog/developer-guide.md | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/content/en/blog/developer-guide.md b/content/en/blog/developer-guide.md index 0f6a90b7..93ec1951 100644 --- a/content/en/blog/developer-guide.md +++ b/content/en/blog/developer-guide.md @@ -12,6 +12,14 @@ The preferred workflow for contributing to Harmony’s repository is to fork the Please read our general guide about [contributing to Harmony](/contributing-to-harmony/). +We have three main repositories on Github under the `harmonydata` organisation: + +* Harmony Python library: https://github.com/harmonydata/harmony - this is everything to do with the NLP logic of Harmony +* Harmony API: https://github.com/harmonydata/harmonyapi +* Harmony front end: https://github.com/harmonydata - this is everything to do with the front end and graphical interface of Harmony + +This contributor guide focuses on the Python library, but you could follow the same steps for the other repositories. + 1. Fork the [main project repository](https://github.com/harmonydata/harmony) by clicking on the ‘Fork’ button near the top right of the page. This creates a copy of the code under your GitHub user account. For more details on how to fork a repository see [this guide](https://help.github.com/articles/fork-a-repo/). 2. [Clone](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) your fork of the Harmony repo from your GitHub account to your local disk: @@ -21,7 +29,7 @@ git clone git@github.com:harmonydata/harmony.git cd harmony ``` -1. Configure and link the remote for your fork to the upstream repository: +3. Configure and link the remote for your fork to the upstream repository: ``` git remote -v @@ -29,7 +37,7 @@ git remote -v git remote add upstream ``` -1. Verify the new upstream repository you’ve specified for your fork: +4. Verify the new upstream repository you’ve specified for your fork: ``` git remote -v @@ -43,7 +51,7 @@ git remote -v \> upstream (push) ``` -1. [Sync](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork) the main branch of your fork with the upstream repository: +5. [Sync](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork) the main branch of your fork with the upstream repository: ``` git fetch upstream @@ -53,7 +61,7 @@ git checkout main git merge upstream/main ``` -1. Create a new feature branch from the main branch to hold your changes: +6. Create a new feature branch from the main branch to hold your changes: ``` git checkout main @@ -63,7 +71,7 @@ git checkout -b Always use a feature branch. It’s good practice to never work on the main branch! Name the feature branch after your contribution. -1. Develop your contribution on your feature branch. Add changed files using git add and then git commit files to record your changes in Git: +7. Develop your contribution on your feature branch. Add changed files using git add and then git commit files to record your changes in Git: ``` git add @@ -71,19 +79,19 @@ git add git commit ``` -1. When finished, push the changes to your GitHub account with: +8. When finished, push the changes to your GitHub account with: ``` git push --set-upstream origin my-feature-branch ``` -1. Follow [these instructions](https://help.github.com/articles/creating-a-pull-request-from-a-fork) to create a pull request from your fork. If your work is still work in progress, open a draft pull request. +9. Follow [these instructions](https://help.github.com/articles/creating-a-pull-request-from-a-fork) to create a pull request from your fork. If your work is still work in progress, open a draft pull request. Note We recommend to open a pull request early, so that other contributors become aware of your work and can give you feedback early on. -1. To add more changes, simply repeat steps 7 - 8. Pull requests are updated automatically if you push new changes to the same branch. +10. To add more changes, simply repeat steps 7 - 8. Pull requests are updated automatically if you push new changes to the same branch. Note