Identify the peers within a firm

4 views (last 30 days)
Dear all:
I am working on a panel dataset, which contains worker ID, firm ID, and year. Each worker works for one firm only in each year - so it is a worker-year panel. I hope to create a matrix that shows whether worker j is worker i's coworker. Ideally, I hope to create a matrix as follows:
where and 1 indicates worker i's coworker's worker index in year t.
I am wondering if anyone knows how to have a quick algorithm instead looping over the worker's index (because there are thousands of workers in the data).
Thank you very much and I look forward to hearing from you!
Best,
Long
  2 Comments
KALYAN ACHARJYA
KALYAN ACHARJYA on 29 Feb 2020
Can you elaborate more (Maths)?
Long Hong
Long Hong on 29 Feb 2020
Hi Kalyan, thanks for asking! An easy example is as follows (two firms and one period).
IDw IDf
1 1
2 1
3 1
4 2
5 2
Then and . Hope it helps.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 29 Feb 2020
You can simply use the firm vector and put it into pdist2(). Any distance that is zero means those two workers are in the same firm
firm2 = [firms(:), firms(:)];
distances = pdist2(firm2, firm2);
For example, if there is a zero at row 30 and column 142 of distances, it means that worker #30 and worker #142 work in the same firm.
  6 Comments
Long Hong
Long Hong on 17 May 2020
Dear @Image Analyst,
I am writing to ask a very quick follow-up question on the use of pdist2,
Using my current (huge) data, pdist2 requires 0.7 million x 0.7 million matrix , and my computer cannot handle such a big matrix. Is there any way to solve this problem (say, adding a sparse matrix option since there are basically 0 and 1 in the matrix)?
Thank you, and I look forward to hearing from you!
Best,
Long
Image Analyst
Image Analyst on 18 May 2020
No idea. Give it a try.

Sign in to comment.

More Answers (0)

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!