Showing posts with label patstat. Show all posts
Showing posts with label patstat. Show all posts

Wednesday, November 6, 2019

PATSTAT 2019b MySQL upload scripts


At this link are available my new scripts for MySQL to upload PATSTAT 2019b data.


Only change in this data ediction is the removal of table TLS906_PERSON that is fully integrated in TLS206.
My scripts have been updated to remove MyIsam as default engine and to make them fully compatible with MySQL 8.0.

Monday, October 7, 2019

PATSTAT & Patentsview: complements or substitutes?

Match of PATSTAT data (2019 spring) and PatentsView (jan 2019) is discussed here, with focus on how this match can help to enrich PATSTAT data with information not contained in USPTO patents (and the other way round).


Monday, September 30, 2019

Patents applicants: how to create the full time series

I share a presentation I made @ EPo & KUL summer school in Vienna last september!
hope it's useful to someone else.

Patents change applicants data within time;
Main reason for change are ownership change, name/address change, M&A …
Applicant’s names contained in TLS206 is the ‘last available’ data;
PATSTAT Global + EP Register make available several sources to build a chain of names
and a timeline for patents contained;




Monday, July 8, 2019

PATSTAT - patentsview concordance update 2019

PatentsView  is a platform built on data derived from USPTO bulk data files.

This dataset complements perfectly PATSTAT since the former has an native disambiguation of inventors and applicants and a geocoding system applied to inventors and applicants, while the latter links US data to other offices, allowing to calculate knowledge spillovers, family data etc.

At this link is possible to download a table of concordance between patent_id (Patentsview main key) and appln_id (from PATSTAT).

Overlapping of the two datasets is not perfect since Patentsview contains only granted patents after 1975, where PATSTAT has also application (ungranted) and timeframe covers also pre-1975 data.
On the other hand PATSTAT misses design patents before 2001,  plants before 2001 and 'statutory invention registration' type of patent.

Data are from PATSTAT spring 2019 and Patentsview march 2019, thus also 2019 data in PW are partially missing in PATSTAT.

Sunday, May 19, 2019

PATSTAT 2019a MySQL upload scripts


At this link are available my new scripts for MySQL to upload PATSTAT 2019a data.

New features in this ediction:


Person names in the original language (PERSON_NAME_ORIG_LG)
Field added in tables TLS206, 226, 906. This creates an inflation of records and lack of retrocompatibility with old personwise data.

“RELEVANT_CLAIM” attribute in the TLS215_CITN_CATEG table
A new attribute “RELEVANT_CLAIM” has been added to the TLS215_CITN_CATEG table. This attribute contains a single number referring to the claim to which the citation refers to.

Monday, May 6, 2019

PATSTAT data coverage

When doing advanced statistical analysis, it is important to understand the coverage and content of the data you are working with. PATSTAT Global contains data coming from all over the world. Quality, timeliness and completeness vary a great deal depending on patent office.


EPO compiled a Tableau  dashboard that maps the content and coverage of PATSTAT Global.


This chart shows the percentage of patent applications having a certain data element (e.g. CPC classification) by patent authority and application year in PATSTAT Global.



Wednesday, October 17, 2018

PATSTAT autumn 2018 MySQL upload scripts

at this link is possible to download a batch of scripts for MySQL that will allow you to upload new PATSTAT edition autumn 2018.

This release has some improvements as:

* Table TLS201_APPLN and TLS211:  attribute granted changed from 0/1 to Y/N.

* Table TLS212_CITATION: Euro-PCT applications did not have the citations from the international search report linked to the respective application (and publication). These are the so called A0 publications. To avoid this, EPO simply duplicated the citations from the international search report, and linked them to the respective EP publications.

* Table TLS803_LEGAL_EVENT_CODE: has been redesigned to match WIPO ST.27.

Tuesday, October 16, 2018

PATSTAT projects on github



Refilling PATSTAT addresses

this project contains a docker container in Python and MySQL to refill persons where addresses is missin

https://github.com/cortext/patstat/tree/master/parsed%20addresses

Classify Legal Entities And Individuals From Patent Applicants

A batch of MySQL script to discriminate type of applicant

https://github.com/cortext/patstat/tree/master/applicants%20classification

Add official name of patent office


https://github.com/cortext/patstat/tree/master/nomenclatures/offices_classification

building descriptions for the International Patent Classification

An API embedded into a VM to get the full description of IPC codes


https://github.com/cortext/patstat/tree/master/nomenclatures/ipc_descriptions


PATSTAT loader

https://github.com/simonemainardi/load_patstat


psClean
Python library and associated code for preparing PATSTAT inventor-patent data for disambiguation with either the Torvik-Smallheiser or Open City Dedupe algorithms.

https://github.com/markhuberty/psClean

 
fuzzygeo
fuzzygeo provides a fuzzy geocoding routine for geocoding at the named entity (city or similar) level
https://github.com/markhuberty/fuzzygeo

psClassify
a simple supervised learning algorithm to classify PATSTAT records into two categories:
  • person names
  • not person names
https://github.com/mkln/psClassify
















 

Wednesday, September 19, 2018

How to build indicators from PATSTAT step by step

A presentation I prepared about how to build a patents based indicator (Patents orìiginality) step by step for EPO PATSTAT avoiding most common pitfalls, included commented SQL code
hope you will find it useful

Thursday, September 13, 2018

MySQL upload scripts for EEE-PPAT 2018a

EEE-PPAT table is an extension of the PERSON TABLE (TLS206) produced by ECOOM (Catholic University of Leuven) and Eurostat. The extension concerns sector allocation and name harmonization of applicants.

2018a version contains 56611335 records, and it has improvements for standard names and sector, compared to PATSTAT ediction.


It can be required at no cost by contacting technoinfo@ecoom.be

MySql script I created for uploading the table can be downloaded here

Friday, June 8, 2018

Applications disappearing across PATSTAT edictions

Interesting fact, especially if you have to run periodical reports: new edictions in PATSTAT not only add new application but a small number of existign applications disappear across edictions.

Below query counts patents disappearing. Results are listed in the table below for offices/appln_kind with more than 1000 disappearing applications

APPLN_AUTH
 APPLN_KIND
 EARLIEST_PUBLN_year
 Count_APPLN_ID
'AU'
 'A'
9999
1142
'AU'
 'D'
1968
1067
'AU'
 'D'
1969
1351
'AU'
 'D'
1970
1458
'AU'
 'D'
1971
1491
'AU'
 'D'
1972
1389
'AU'
 'D'
1973
7322
'AU'
 'D'
1974
7474
'AU'
 'D'
1975
4478
'AU'
 'D'
1976
2554
'AU'
 'D'
1977
4680
'AU'
 'D'
1978
7522
'AU'
 'D'
1979
11628
'AU'
 'D'
1980
9765
'AU'
 'D'
1981
7680
'AU'
 'D'
1982
7652
'AU'
 'D'
1983
7804
'AU'
 'D'
1984
7995
'AU'
 'D'
1985
8747
'AU'
 'D'
1986
9701
'AU'
 'D'
1987
9809
'AU'
 'D'
1988
10245
'AU'
 'D'
1989
6807
'AU'
 'D'
1990
11410
'AU'
 'D'
1991
10272
'AU'
 'D'
1992
8128
'AU'
 'D'
1993
5961
'AU'
 'D'
1994
7735
'AU'
 'D'
1995
9861
'AU'
 'D'
1996
12173
'AU'
 'D'
1997
11543
'AU'
 'D'
1998
15028
'AU'
 'D'
1999
15274
'AU'
 'D'
2000
15162
'AU'
 'D'
2001
11687
'AU'
 'D'
2002
3623
'KR'
 'A'
2005
1956
'KR'
 'A'
2006
2954


Some offices show a systematic decrease of number of applications

office
app kind
earl pub date
n apps 2018a
n apps 2016b
Colonna1
'IT'
 'A'
2010
9040
9257
-2%
'IT'
 'A'
2011
9411
9681
-3%
'IT'
 'A'
2012
8913
9152
-3%
'IT'
 'A'
2013
8858
9180
-4%
'IT'
 'A'
2014
8234
8494
-3%
'IT'
 'A'
2015
3833
3865
-1%


SELECT
  a.APPLN_AUTH,
  a.APPLN_KIND,
  a.EARLIEST_PUBLN_year,
  Count(DISTINCT a.APPLN_ID) AS Count_APPLN_ID
FROM
  patstat2016b.tls201_appln a
  LEFT JOIN patstat.tls201_appln b ON b.APPLN_ID = a.APPLN_ID
WHERE
  b.APPLN_ID IS NULL
GROUP BY
  a.APPLN_AUTH,
  a.APPLN_KIND,
  a.EARLIEST_PUBLN_year,
  b.APPLN_ID