QuantEcon / QuantEcon/QuantEcon.py
Some suggestions on quantecon.game_theory.normal_form_game
Open
Nobody has claimed this yet.
discuss
- Dominant language
- Python
- Stars
- 2.4k
- Forks
- 2.3k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 3
Description
Documentation
- Doucumentation should be a guidance to the high level interface. It should tell people how you design it and how to use it. It should not be organized by the order of the design but not the order of API. The API list can be list seperately after the documentation, but not the main parts of it.
Names
- The names can be simpler so that it can be easiler to use. Python allows you to use same name in the different modules and packages, to overcome the name problems in procedure-oriented programming. For example,
game_thoerycan change togames. It will not lose information, but we can think it more Pythonic becausegamesare objects, but theory itself is more abstract. Andnormal_form_gamecan benormal
API
- We can add the high-level interface into the top of the package or subpackage. For example,
quantecon.game_theory.normal_form_game.Playercan bequantecon.games.Playeror evenquantecon.Player. (The formal one may be better to read.)
Implements
- The input data are Python lists. It is easy to calculate the result, but not easy to understand the game itself. We can create a object like NDFrame from pandas to label the actions and players. Then we can try to make a query method like
game.Aliceandgame['Alice']to look at Alice's payoffs, and game.action1 or game['action1] to look at the payoffs of action1. (They are not difficult to implement by Python.) - We can add a plot method to visualize the game. (The problem is that high-dimension is not easy to plot. Maybe some high-dimension visualization methods can be used.)
My contracts:
- Guo Zhang
- zhangguo@stu.xmu.edu.cn
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the quantecon.game_theory.normal_form_game entry point and its surrounding package documentation and API. The issue proposes several independent changes—documentation structure, renaming, a higher-level interface, labeled data, and plotting—but does not define a bounded scope or tests for completion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend-api-design, documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 18/100