Help w/ making bags

Published

December 8, 2025

Abstract

Quick tabulations of data on whether participants paid (or got paid) for help with making bags

Farming Out Work

Note

About 40% of participants report getting help with bags. Nearly all of this is from their household members and this pattern is fairly balanced across arms.

It does seem that those in the Unpredictable receive more help from outside the household relative to the other arms (11.5% vs 5% in the other two arms). The absolute amounts are relatively small however

Code
```{stata}
graph hbar (sum) total help_people_0 help_people_1 help_people_2 help_people_3 if treat != "Control", over(treat) legend(order(1 "Number of Participants" 2 "No Help" 3 "HH Member" 4 "Study Participant" 5 "Non-HH Non-study person") pos(6) rows(2)) blabel(total) bar(1, color(gs2)) bar(2, color(gs6))
```

Code
```{stata}
graph hbar (sum) total receive_help no_payment payment_made payment_outside_hh if treat != "Control", over(treat) legend(order(1 "Number of Participants" 2 "Received Help" 3 "No Payment" 4 "Payment" 5 "Payment outside HH") pos(6) rows(2)) blabel(total)  bar(1, color(gs2)) bar(2, color(eltblue))
```

Disaggregated By Community

Code
```{ojs}
data = FileAttachment("../../data/generated/p3/temp/out.csv").csv({typed: true})

Plot.plot({
    marginLeft: 100,
    height: 500,
    x: {label: "Percentage"},
    y: {
        label: null,
        domain: d3.sort(data, d => -d.treated).map(d => d.community)
    },
    marks: [
        Plot.dot(data, {
            x: "receive_help_pct",
            y: "community",
            fill: "steelblue"
        }),
        Plot.dot(data, {
            x: "payment_outside_hh_pct",
            y: "community", 
            fill: "green"
        }),
        Plot.text(data.flatMap(d => [
            {x: d.receive_help_pct, y: d.community, text: d.receive_help_pct.toFixed(1) + "%"},
            {x: d.payment_outside_hh_pct, y: d.community, text: d.payment_outside_hh_pct.toFixed(1) + "%"}
        ]), {
            x: "x",
            y: "y", 
            text: "text",
            dx: 20,
        }),
        Plot.text(data, {
            x: -10,
            y: "community",
            text: d => `(n=${d.treated})`,
            dx: 15
        })
    ],
    color: {
        legend: true,
        domain: ["Received Help", "Payment Outside HH"],
        range: ["steelblue", "green"]
    }
})
```
Code
```{ojs}
Inputs.table(data)
```