mirror of
https://github.com/apache/arrow.git
synced 2026-10-29 17:15:39 +08:00
Do not write index_column metadata if not requested
This commit is contained in:
1 parent
21a88295f7
commit
2fa1f16dbd
2 files changed
+11
-9
No files matched your search
@@ -79,23 +79,25 @@ def index_level_name(index, i):
|
||||
return index.name or '__index_level_{:d}__'.format(i)
|
||||
|
||||
|
||||
def construct_metadata(df, index_levels):
|
||||
def construct_metadata(df, index_levels, preserve_index):
|
||||
return {
|
||||
b'pandas': json.dumps(
|
||||
{
|
||||
'index_columns': [
|
||||
index_level_name(level, i)
|
||||
for i, level in enumerate(index_levels)
|
||||
],
|
||||
] if preserve_index else [],
|
||||
'columns': [
|
||||
get_column_metadata(df[name], name=name)
|
||||
for name in df.columns
|
||||
] + [
|
||||
get_column_metadata(
|
||||
level, name=index_level_name(level, i)
|
||||
)
|
||||
for i, level in enumerate(index_levels)
|
||||
],
|
||||
] + (
|
||||
[
|
||||
get_column_metadata(
|
||||
level, name=index_level_name(level, i)
|
||||
)
|
||||
for i, level in enumerate(index_levels)
|
||||
] if preserve_index else []
|
||||
),
|
||||
'pandas_version': pd.__version__,
|
||||
}
|
||||
).encode('utf8')
|
||||
|
||||
@@ -345,7 +345,7 @@ cdef tuple _dataframe_to_arrays(
|
||||
)
|
||||
names.append(pdcompat.index_level_name(level, i))
|
||||
|
||||
metadata = pdcompat.construct_metadata(df, index_levels)
|
||||
metadata = pdcompat.construct_metadata(df, index_levels, preserve_index)
|
||||
return names, arrays, metadata
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user