dataframe 筛选列
时间: 2023-07-06 07:20:04 浏览: 78
要筛选 DataFrame 中的列,可以使用方括号操作符 [],并在其中指定所需的列名。例如,如果你有一个名为 df 的 DataFrame,其中包含列名为 "col1"、"col2" 和 "col3",你可以通过以下方式选择 "col1" 和 "col2" 两列:
```
df[['col1', 'col2']]
```
这将返回一个新的 DataFrame,其中包含选定的列。如果你只想选择一列,则可以省略方括号中的列表,例如:
```
df['col1']
```
这将返回一个 Series 对象,其中包含所选列的值。
相关问题
pandas dataframe 筛选列
要筛选pandas DataFrame的列,可以使用以下方法:
1. 使用列标签进行筛选:
```python
df_filtered = df[['column1', 'column2']]
```
这将返回一个新的DataFrame,其中只包含指定的列。
2. 使用列索引进行筛选:
```python
df_filtered = df.iloc[:, [0, 1]]
```
这将返回一个新的DataFrame,其中只包含指定的列索引。
3. 使用布尔条件进行筛选:
```python
df_filtered = df[df['column1'] > 10]
```
这将返回一个新的DataFrame,其中只包含满足指定条件的行。
4. 使用列名的字符串方法进行筛选:
```python
df_filtered = df.filter(like='column')
```
这将返回一个新的DataFrame,其中只包含列名中包含指定字符串的列。
5. 使用正则表达式进行筛选:
```python
df_filtered = df.filter(regex='^column')
```
这将返回一个新的DataFrame,其中只包含列名以指定字符串开头的列。
dataframe筛选某列纯中文
您好,要筛选dataframe中某列纯中文的数据,可以利用正则表达式来匹配中文字符。以下是示例代码:
```python
import pandas as pd
import re
# 创建示例数据
data = {'姓名': ['张三', '李四', '王五', 'Tom', 'Jerry'], '年龄': [20, 25, 30, 35, 40]}
df = pd.DataFrame(data)
# 筛选姓名列中纯中文的数据
pattern = re.compile(r'^[\u4e00-\u9fa5]+$') # 定义纯中文的正则表达式
df_chinese = df[df['姓名'].apply(lambda x: pattern.match(x) is not None)]
print(df_chinese)
```
运行结果如下:
```
姓名 年龄
0 张三 20
1 李四 25
2 王五 30
```
以上代码中,`pattern` 定义了一个纯中文的正则表达式,`df['姓名'].apply(lambda x: pattern.match(x) is not None)` 对姓名列中的每个元素都进行正则匹配,只有匹配成功的才会被筛选出来。
阅读全文