Hướng dẫn flatten list of dictionaries python pandas - làm phẳng danh sách từ điển python pandas

Tôi có một DataFrame và mỗi bản ghi lưu trữ một danh sách các từ điển như thế này:

row prodect_id recommend_info
  0 XQ002      [{"recommend_key":"XXX567","recommend_point":50},
                {"recommend_key":"XXX236","recommend_point":20},
                {"recommend_key":"XXX090","recommend_point":35}]
  1 XQ003      [{"recommend_key":"XXX089","recommend_point":30},
                {"recommend_key":"XXX567","recommend_point":20}]

Tôi muốn làm phẳng danh sách từ điển, để nó trông như thế này

row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20

Tôi biết cách chỉ chuyển đổi một danh sách từ điển thành DataFrame. như thế này:

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20

Nhưng tôi không biết làm thế nào để thực hiện việc này với DataFrame khi có một danh sách lưu trữ cột của các dicts hoặc có nhiều cột lưu trữ danh sách các dicts

row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]

Cải thiện bài viết

Lưu bài viết

Đưa ra một danh sách các từ điển, nhiệm vụ là chuyển đổi nó thành từ điển duy nhất, tức là làm phẳng danh sách các từ điển.

Đưa ra dưới đây là một vài phương pháp để giải quyết nhiệm vụ đã cho.

Phương pháp số 1: Sử dụng phương pháp ngây thơ

Python3

ini_dict =

row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
0
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
1
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
2
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
3
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
4
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
5__12

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
5
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
8

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
9=
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
49
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
50
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
51

Bạn có thể làm phẳng một từ điển trong Python?

row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
6
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
7

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
0
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
3

Output:

initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}

Phương pháp số 2: Sử dụng sự hiểu biết của Dict

Python3

ini_dict =

row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
0
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
1
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
2
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
3
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
4
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
5__12

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
5
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
8

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
9=
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'a': 1, 'c': 3, 'b': 2}
7
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
2
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
3
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
4 ini_dict
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
2

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
0
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
3

Output:

initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'a': 1, 'c': 3, 'b': 2}

& nbsp; Phương pháp số 3: Sử dụng giảm
Method #3: Using reduce

Python3

ini_dict 2 ini_dict 3ini_dict 4 ________ 85 & nbsp;

ini_dict =

row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
0
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
1
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
2
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
3
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
4
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
5__12

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
5
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
8

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
9=
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'a': 1, 'c': 3, 'b': 2}
7
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
2
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
3
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
4 ini_dict
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
2

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
0
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
3

Output:

initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'a': 1, 'c': 3, 'b': 2}

& nbsp; Phương pháp số 3: Sử dụng giảm
Method #4: Using

row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
21

Python3

ini_dict 2 ini_dict 3ini_dict 4 ________ 85 & nbsp;

ini_dict =

row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
0
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
1
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
2
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
3
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
4
row prodect_id recommend_info_recommend_key recommend_info_recommend_point
  0 XQ002      XXX567                       50
  1 XQ002      XXX236                       20
  2 XQ002      XXX090                       35
  3 XQ003      XXX089                       30
  4 XQ003      XXX567                       20
5__12

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
5
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
8

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
9=
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'a': 1, 'c': 3, 'b': 2}
7
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
2
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
3
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
4 ini_dict
row  col_a  col_b                  col_c
  0  B001   [{"a":"b"},{"a":"c"}]  [{"y":11},{"a":"c"}]
  1  D009   [{"c":"o"},{"g":"c"}]  [{"y":11},{"a":"c"},{"l":"c"}]   
  2  G068   [{"c":"b"},{"a":"c"}]  [{"a":56},{"d":"c"}]
  3  C004   [{"d":"a"},{"b":"c"}]  [{"c":22},{"a":"c"},{"b":"c"}]
  4  F011   [{"h":"u"},{"d":"c"}]  [{"h":27},{"d":"c"}]
2

d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
3
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
4
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
0
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
6
d = [{"recommend_key":"XXX089","recommend_point":30},
     {"recommend_key":"XXX567","recommend_point":20}]

df = pd.DataFrame(d)

row recommend_key recommend_point
  0 XXX089        30
  1 XXX567        20
7
initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result {'b': 2, 'a': 1, 'c': 3}
3

Output:

initial dictionary [{'a': 1}, {'b': 2}, {'c': 3}]
result ChainMap({'a': 1}, {'b': 2}, {'c': 3})


Bạn có thể làm phẳng một từ điển trong Python?

Trong bài đăng này, chúng tôi đã thấy 4 cách khác nhau để làm phẳng một từ điển trong Python.Mỗi giải pháp đi kèm với ưu và nhược điểm, và chọn một giải pháp tốt nhất là vấn đề của sở thích cá nhân và hạn chế dự án.4 different ways of flattening a dictionary in Python. Each solutions comes with pros and cons, and choosing the best one is a matter of personal taste and project constrains.

Phương pháp phẳng trong gấu trúc là gì?

Trả lại một bản sao của mảng bị sụp đổ thành một chiều.Có làm phẳng trong c (hàng-major), fortran (cột-major) hoặc bảo tồn thứ tự c/fortran từ a.Mặc định là 'C'.. Whether to flatten in C (row-major), Fortran (column-major) order, or preserve the C/Fortran ordering from a . The default is 'C'.

Nó có nghĩa là gì khi làm phẳng một khung dữ liệu?

Trong bài viết này, chúng ta sẽ xem làm thế nào để làm phẳng danh sách các khung dữ liệu.Làm phẳng được định nghĩa là chuyển đổi hoặc thay đổi định dạng dữ liệu thành định dạng hẹp.Ưu điểm của danh sách phẳng là tăng tốc độ tính toán và hiểu biết tốt về dữ liệu.Converting or Changing data format to a narrow format. The advantage of the flattened list is Increases the computing speed and Good understanding of data.