Skip to content

Commit 7fbda1e

Browse files
authored
concat: accept Iterable as keys (#639)
1 parent 53a1e9a commit 7fbda1e

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

pandas-stubs/core/reshape/concat.pyi

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def concat(
2929
axis: AxisIndex = ...,
3030
join: Literal["inner", "outer"] = ...,
3131
ignore_index: bool = ...,
32-
keys: list[HashableT2] = ...,
32+
keys: Iterable[HashableT2] = ...,
3333
levels: Sequence[list[HashableT3] | tuple[HashableT3, ...]] = ...,
3434
names: list[HashableT4] = ...,
3535
verify_integrity: bool = ...,
@@ -43,7 +43,7 @@ def concat(
4343
axis: AxisIndex = ...,
4444
join: Literal["inner", "outer"] = ...,
4545
ignore_index: bool = ...,
46-
keys: list[HashableT2] = ...,
46+
keys: Iterable[HashableT2] = ...,
4747
levels: Sequence[list[HashableT3] | tuple[HashableT3, ...]] = ...,
4848
names: list[HashableT4] = ...,
4949
verify_integrity: bool = ...,
@@ -57,7 +57,7 @@ def concat(
5757
axis: AxisColumn,
5858
join: Literal["inner", "outer"] = ...,
5959
ignore_index: bool = ...,
60-
keys: list[HashableT2] = ...,
60+
keys: Iterable[HashableT2] = ...,
6161
levels: Sequence[list[HashableT3] | tuple[HashableT3, ...]] = ...,
6262
names: list[HashableT4] = ...,
6363
verify_integrity: bool = ...,

tests/test_pandas.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,16 @@ def test_concat_args() -> None:
166166
),
167167
pd.DataFrame,
168168
)
169+
170+
df_dict = {"df1": df, "df2": df2}
171+
check(
172+
assert_type(
173+
pd.concat(df_dict.values(), keys=df_dict.keys()),
174+
pd.DataFrame,
175+
),
176+
pd.DataFrame,
177+
)
178+
169179
check(
170180
assert_type(pd.concat([df, df2], ignore_index=True), pd.DataFrame), pd.DataFrame
171181
)

0 commit comments

Comments
 (0)