Pandas DataFrame 选择列
本教程介绍了如何通过索引或使用 DataFrame.drop()
和 DataFrame.filter()
方法从 Pandas DataFrame 中选择列。
我们将使用下面的 DataFrame df
来解释如何从 Pandas DataFrame 中选择列。
import pandas as pd
df = pd.DataFrame({
'A': [302, 504, 708, 103, 343, 565],
'B': [100, 300, 400, 200, 400, 700],
'C': [300, 400, 350, 100, 1000, 400],
'D': [10, 15, 5, 0, 2, 7],
'E': [4, 5, 6, 7, 8, 9]
})
print(df)
输出:
A B C D E
0 302 100 300 10 4
1 504 300 400 15 5
2 708 400 350 5 6
3 103 200 100 0 7
4 343 400 1000 2 8
5 565 700 400 7 9
使用索引操作从 Pandas DataFrame 中选择列
import pandas as pd
df = pd.DataFrame({
'A': [302, 504, 708, 103, 343, 565],
'B': [100, 300, 400, 200, 400, 700],
'C': [300, 400, 350, 100, 1000, 400],
'D': [10, 15, 5, 0, 2, 7],
'E': [4, 5, 6, 7, 8, 9]
})
derived_df = df[['A', 'C', 'E']]
print("The initial DataFrame is:")
print(df, "\n")
print("The DataFrame with A,C and E columns is:")
print(derived_df, "\n")
输出:
The initial DataFrame is:
A B C D E
0 302 100 300 10 4
1 504 300 400 15 5
2 708 400 350 5 6
3 103 200 100 0 7
4 343 400 1000 2 8
5 565 700 400 7 9
The DataFrame with A,C and E columns is:
A C E
0 302 300 4
1 504 400 5
2 708 350 6
3 103 100 7
4 343 1000 8
5 565 400 9
它从 DataFrame df
中选择列 A
、C
和 E
,并将这些列分配到 derived_df
DataFrame 中。
使用 DataFrame.drop()
方法从 Pandas DataFrame 中选择列
import pandas as pd
df = pd.DataFrame({
'A': [302, 504, 708, 103, 343, 565],
'B': [100, 300, 400, 200, 400, 700],
'C': [300, 400, 350, 100, 1000, 400],
'D': [10, 15, 5, 0, 2, 7],
'E': [4, 5, 6, 7, 8, 9]
})
derived_df = df.drop(['B', 'D'], axis=1)
print("The initial DataFrame is:")
print(df, "\n")
print("The DataFrame with A,C and E columns is:")
print(derived_df, "\n")
输出:
The initial DataFrame is:
A B C D E
0 302 100 300 10 4
1 504 300 400 15 5
2 708 400 350 5 6
3 103 200 100 0 7
4 343 400 1000 2 8
5 565 700 400 7 9
The DataFrame with A,C and E columns is:
A C E
0 302 300 4
1 504 400 5
2 708 350 6
3 103 100 7
4 343 1000 8
5 565 400 9
它从 DataFrame df
中删除 B
和 D
列,并将其余列分配给 derived_df
。或者,它选择除 B
和 D
以外的所有列,并将它们分配到 derived_df
DataFrame 中。
使用 DataFrame.filter()
方法从 Pandas DataFrame 中选择列
import pandas as pd
df = pd.DataFrame({
'A': [302, 504, 708, 103, 343, 565],
'B': [100, 300, 400, 200, 400, 700],
'C': [300, 400, 350, 100, 1000, 400],
'D': [10, 15, 5, 0, 2, 7],
'E': [4, 5, 6, 7, 8, 9]
})
derived_df = df.filter(["A", "C", "E"])
print("The initial DataFrame is:")
print(df, "\n")
print("The DataFrame with A,C and E columns is:")
print(derived_df, "\n")
输出:
The initial DataFrame is:
A B C D E
0 302 100 300 10 4
1 504 300 400 15 5
2 708 400 350 5 6
3 103 200 100 0 7
4 343 400 1000 2 8
5 565 700 400 7 9
The DataFrame with A,C and E columns is:
A C E
0 302 300 4
1 504 400 5
2 708 350 6
3 103 100 7
4 343 1000 8
5 565 400 9
它从 DataFrame df
中提取或过滤 A
、C
和 E
列,并将其分配给 DataFrame derived_df
。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。