Hi, and welcome to community.rstudio.com! Without knowing what your data and code look like, it's a little hard to answer your question. To help you get the right help for your question, can you please turn it into a reprex (reproducible example)? This will ensure we're all looking at the same data and code. A guide for creating a reprex can be found here.
From a high level, filter() and select() are different verbs in the tidyverse. filter() operates on rows, whereas select() operates on columns.
For example, in the reprex below, I'm using the built-in mtcars dataset to illustrate using filter() to retain certain rows by a certain criterion of interest, or using select() to retain certain columns based on column names.
Based on both @kmprioli's example and the error you posted, I put together this reprex that I think identifies what is going on. Since everything in mtcars is numeric, converting just one column to character will mean that the entire matrix I create will be character as well. When I try and select a column from that matrix, I get the same error you do.
The way around this is to change how you are storing data. dplyr works on data frames and tibbles - you'll want to use one of those formats for storing your data as opposed to a matrix.
# load required package
library(dplyr)
#>
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#>
#> filter, lag
#> The following objects are masked from 'package:base':
#>
#> intersect, setdiff, setequal, union
# load data
mt_cars <- mtcars
# convert one variable in mtcars to character
mt_cars$mpg <- as.character(mt_cars$mpg)
# store the mtcars data as a matrix
mt_matrix <- as.matrix(mt_cars)
# try and use select
mt_mpg <- select(mt_matrix, mpg)
#> Error in UseMethod("select_"): no applicable method for 'select_' applied to an object of class "c('matrix', 'character')"
It is a bit surprising to hear, but most error messages mean very little on their own β context is everything! That said, one thought: this message makes it sound like you tried to use select() (from the dplyr package) on a matrix of character data rather than on a data frame. All of the main functions in dplyr operate on data frames, not matrices. While both data frames and matrices can seem table-like, to R they are very different things.
Itβs hard to go much further than that without seeing your code, so I encourage you to take @kmprioliβs excellent advice and try to make a reproducible example of your problem.
There's another possibility, although it's hard to tell without a reprex: filter and select could be masked by another package. Whenever I have errors I can't work out with those two, I check my packages immediately