如何从熊猫数据框中选择像一对这样的东西?

时间:2018-09-05 12:51:24

标签: python-3.x pandas dataframe

我是python和Pandas的新手。所以我有以下情况。 数据框(df)如下所示:

import ....

const INITIAL_STATE = {
...
};

export default class Signup extends Component<{}> {

  handleSignUp = () => {
    ...
  };

  render() {

    const isInvalid =
      passwordOne !== passwordTwo ||
      passwordOne === "" ||
      email === "" ||
      username === "";
    return (
      <View style={styles.container}>

        <TextInput .../>
        <TextInput .../>
        <TextInput ... />
        <TextInput ... />

        <TouchableOpacity style={styles.button} disabled={isInvalid}>
          <Text style={styles.buttonText} onPress={this.handleSignUp}>
            Sign up
          </Text>
        </TouchableOpacity>


      </View>
    );
  }
}

const styles = StyleSheet.create({

});

现有代码如下:

  col1  col2  col3 col4 col5 col6 
0 x1    y1    z1   f1   e1   g1
1 x2    y2    z2   f2   e2   g2

将“项目”集写入文件。当前,输出文件仅包含一列...“ col3”,如下所示。

文件:items.txt

items = set()
...
for item in df['col3'].tolist():
  if item not in items:
    items.add(item)

新要求是将col3和col5写入文件中。现在,额外的要求是还需要为相应的col3 z1 z2 值捕获col5值。

文件:items.txt

col3

我尝试使用以下内容创建另一个col3 col5 z1 e1 z2 e2

dataframe

但除此之外,我目前迷路了。

感谢您的帮助。

谢谢, 阿努普

1 个答案:

答案 0 :(得分:0)

更新了答案以选择唯一值。首先,我们压缩2列,并使用示例df查找唯一值,其中我只是从第一个df复制行:

col1    col2    col3    col4    col5    col6
x1      y1      z1      f1      e1      g1
x2      y2      z2      f2      e2      g2  
x1      y1      z1      f1      e1      g1
x2      y2      z2      f2      e2      g2  

然后代码获取col3的唯一值和相应的col5值:

df = pd.read_csv('./Desktop/funky.csv')

df2 = df[['col3', 'col5']] # create new df of only col3 and col5
df_uniq = df2.drop_duplicates(['col3']) # keep only unique values of col3 and corresponding col5 values
df_uniq.to_csv('items.txt', sep='\t') # write to file